1

在过去的几周里,我们每天使用 hadoop 流计算一些报告。最近我们对我们的程序做了一个改动,如果输入的大小小于10MB,我们会在JobConf中设置mapred.job.tracker=local,那么job就会在本地运行。

但是昨晚,许多作业都失败了,runningJob.getJobState() 返回了状态 3。我不知道为什么,stderr 中什么也没有。

我无法搜索与此问题相关的任何内容。所以我想知道我是否应该在生产模式下使用 mapred.job.tracker=local ?也许它只是hadoop提供的开发中的调试解决方案。

有人知道吗?任何东西,任何信息,谢谢。

4

1 回答 1

0

我相信设置mapred.job.tracker=local与您的错误无关,因为local默认值也是如此。此配置参数定义 MapReduce 作业跟踪器运行的主机和端口。如果将其设置为“本地”,则作业将作为单个 map 和 reduce 任务在进程内运行。

参考这里

于 2013-01-09T08:18:08.040 回答