我正在运行 Hadoop 流式作业。此作业失败并出现错误:
"TaskTree [pid=13549,tipID=attempt_201202130706_121058_m_000000_0] is running beyond memory-limits. Current usage : 1667149824bytes. Limit : 1610612736bytes. Killing task."
对于此作业,mapred.job.map.memory.mb 设置为 1536。将其设置为有1536*2 = 3072
帮助,但会导致 1 个映射任务使用 2 个插槽,这是不可取的。
当我在主机上运行此作业时,我发现它使用了 1.07 GB 的峰值内存,远小于 1536 MB。"ps -o vsz=${pid}"
我使用“top”和每 1 秒使用一次的脚本验证了主机上作业的内存使用情况。
有人可以帮我理解/调试/解决这个问题。