java堆空间在aws emr上使用pig

ctehm74n  于 2021-07-26  发布在  Hadoop
关注(0)|答案(1)|浏览(386)

我在一个aws emr集群(4核m3.xlarge)上遇到了这个问题,它处理一个40gb的文本文件。fatal[main]org.apache.hadoop.mapred.yarnchild:运行child:java.lang.outofmemoryerror:java堆空间时出错
它发生在Map过程中。作业开始,几分钟后就失败了。emr-4.4.0、亚马逊2.7.1、pig 0.14.0
我用不同的值尝试了这些命令,但问题仍然出现:
pig-dmapreduce.map.java.opts=-xmx2304m-dmapred.child.java.opts=-xmx3072m脚本.pig
pig-dmapreduce.map.java.opts=-xmx3328m-dmapred.child.java.opts=-xmx4096m-dmapreduce.map.memory.mb=5120 script.pig
我没什么主意了。。。有什么建议吗?
2016-03-26 08:05:06087 info[main]amazon.emr.metrics.metricssaver:1聚合hdfsreadbytes 63个原始值为5个聚合值,总计5个2016-03-26 08:05:17,518 fatal[main]org.apache.hadoop.mapred.yarnchild:运行child:java.lang.outofmemoryerror:java.util.arrays.copyof(arrays)处的java堆空间时出错。java:2271)在org.apache.hadoop.io.text.setcapacity(text。java:266)在org.apache.hadoop.io.text.append(text。java:236)在org.apache.hadoop.util.linereader.readdefaultline(linereader。java:243)在org.apache.hadoop.util.linereader.readline(linereader。java:174)在org.apache.hadoop.mapreduce.lib.input.linerecordreader.nextkeyvalue(linerecordreader。java:185)在org.apache.pig.builtin.textloader.getnext(textloader。java:58)位于org.apache.pig.backend.hadoop.executionengine.mapreducelayer.pigrecordreader.nextkeyvalue(pigrecordreader。java:204)在org.apache.hadoop.mapred.maptask$newtrackingrecordreader.nextkeyvalue(maptask。java:565)在org.apache.hadoop.mapreduce.task.mapcontextimpl.nextkeyvalue(mapcontextimpl。java:80)在org.apache.hadoop.mapreduce.lib.map.wrappedmapper$context.nextkeyvalue(wrappedmapper。java:91)在org.apache.hadoop.mapreduce.mapper.run(mapper。java:152)在org.apache.hadoop.mapred.maptask.runnewmapper(maptask。java:796)在org.apache.hadoop.mapred.maptask.run(maptask。java:342)在org.apache.hadoop.mapred.yarnchild$2.run(yarnchild。java:172)位于javax.security.auth.subject.doas(subject)的java.security.accesscontroller.doprivileged(本机方法)。java:415)在org.apache.hadoop.security.usergroupinformation.doas(用户组信息。java:1657)在org.apache.hadoop.mapred.yarnchild.main(yarnchild。java:166)
2016-03-26 08:05:17621 info[main]org.apache.hadoop.metrics2.impl.metricsystemimpl:正在停止maptask metrics系统。。。2016-03-26 08:05:17622 info[cloudwatch]org.apache.hadoop.metrics2.impl.metricssinkadapter:cloudwatch线程中断。2016-03-26 08:05:17625 info[main]org.apache.hadoop.metrics2.impl.metricssystemimpl:maptask metrics系统已停止。2016-03-26 08:05:17625 info[main]org.apache.hadoop.metrics2.impl.metricssystemimpl:maptask metrics系统关闭完成。

gc0ot86w

gc0ot86w1#

我已经知道我为什么会有这个问题了。在我的文本文件中,我有几行带有这个字符^@^@^@^@^@^@^@^@^@^@^@^的行,它生成了一个非常长的行。一旦移除,就可以正常工作
https://superuser.com/questions/75130/how-to-remove-this-symbol-with-vim

相关问题