在 map-reduce 作业中,我收到错误“java.lang.OutOfMemoryError: Java heap space”。由于我在映射器函数中收到此错误;我认为当我降低映射器的输入大小时,我不会再有错误,所以我将 mapred.max.split.size 更改为更低的值。
然后,我再次开始工作,我看到“要执行的映射器任务的数量”增加了,所以我认为降低 mapred.max.split.size 是个好主意:更多的映射器具有更低的内存需求。
但是,我一次又一次地收到“java.lang.OutOfMemoryError: Java heap space”错误。
看来,我不明白 hadoop 是如何工作的。
有什么建议么?