[英]Getting error “java.lang.OutOfMemoryError: Java heap space” while running simple mapreduce job
I have been trying to run a simple Mapreduce job for wordcount in RHEL 6 but am consistently getting this error. 我一直在尝试在RHEL 6中为单词计数运行一个简单的Mapreduce作业,但始终遇到此错误。 Please help.
请帮忙。
13/01/13 19:59:01 INFO mapred.MapTask: io.sort.mb = 100
13/01/13 19:59:01 WARN mapred.LocalJobRunner: job_local_0001
java.lang.OutOfMemoryError: Java heap space
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.<init>(MapTask.java:949)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.<init>(MapTask.java:674)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:756)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:370)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:212)
13/01/13 19:59:02 INFO mapred.JobClient: map 0% reduce 0%
13/01/13 19:59:02 INFO mapred.JobClient: Job complete: job_local_0001
13/01/13 19:59:02 INFO mapred.JobClient: Counters: 0
You probably need to increase some JVM settings for max heap and max perm space. 您可能需要增加一些JVM设置以获得最大堆和最大烫发空间。
I'd recommend running Visual VM when your Hadoop job is running so you can get some visibility into what's going on. 我建议您在Hadoop作业运行时运行Visual VM ,以便您可以了解正在发生的事情。
Are you running multiple servers? 您正在运行多台服务器吗? Maybe you're asking a single server to do too much.
也许您正在要求一台服务器做太多事情。
You can use jstat -gcutil
to monitor memory usage of your JVMs. 您可以使用
jstat -gcutil
监视JVM的内存使用情况。 This will show you how fast is the Heap usage growing. 这将显示堆使用量增长的速度。
Further, you can also enable the GC logging, this is lightweight and will show you the same for each JVM that you instantiate: 此外,您还可以启用GC日志记录,这是轻量级的,将为您实例化的每个JVM显示相同的内容:
-XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=jvm.log -XX:+HeapDumpOnOutOfMemoryError -Xloggc:gc.log -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -showversion
-XX:+ UnlockDiagnosticVMOptions -XX:+ LogVMOutput -XX:LogFile = jvm.log -XX:+ HeapDumpOnOutOfMemoryError -Xloggc:gc.log -XX:+ PrintGCTimeStamps -XX:+ PrintGCDetails -showversion
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.