Hadoop作业:任务无法报告状态601秒

时间:2012-02-02 08:28:36

标签: java eclipse hadoop mapreduce

在伪节点上运行hadoop作业时,任务失败并被杀死。 错误:任务尝试_无法报告状态601秒

但是同一个程序正在运行Eclipse(本地工作)。

任务:大约有25K关键字,输出将是所有可能的组合(一次两个),即大约25K * 25K entires

可能是什么问题?

3 个答案:

答案 0 :(得分:7)

由于某种原因,在伪节点上执行任务时,任务没有进展。您可以在mapred-site.xml中增加“mapred.task.timeout”设置。 mapred-default.xml中默认值的默认值为:

 <property>
    <name>mapred.task.timeout</name>
    <value>600000</value>
    <description>The number of milliseconds before a task will be 
                 terminated if it neither reads an input, writes 
                 an output, nor updates its status string.
    </description>
 </property>

答案 1 :(得分:2)

出于测试目的/一次性作业或调试,超时值的增加可能是一个不错的选择,但是正如实践表明这对于生产来说不是一个好的解决方案,您应该检查并优化代码。

答案 2 :(得分:2)

Hadoop提供相同的报告API。如果你没有向hadoop作业报告进度达到600分钟的10分钟,它会认为任务被卡住并杀死了任务。 API参考是Here