hadoop MapReduce Shuffle错误:超过MAX_FAILED_UNIQUE_FETCHES;舀出

时间:2015-05-20 14:21:07

标签: hadoop mapreduce hdfs

尝试使用多个输入文件运行MapReduce作业时,我面临以下错误。虽然我只能使用一个输入文件运行MapReduce作业。 我浏览了一些帖子,几乎每个人都说防火墙问题或者没有在/ etc / hosts文件中正确设置主机名。 即使是这种情况,无论输入是单个文件还是目录(多个文件),我的MapReduce作业都将失败

以下是控制台的输出。

    INFO input.FileInputFormat: Total input paths to process : 2
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
WARN snappy.LoadSnappy: Snappy native library not loaded
INFO mapred.JobClient: Running job: job_201505201700_0005
INFO mapred.JobClient:  map 0% reduce 0%
INFO mapred.JobClient:  map 50% reduce 0%
INFO mapred.JobClient:  map 100% reduce 0%
INFO mapred.JobClient:  map 100% reduce 16%

INFO mapred.JobClient:  map 100% reduce 0%
INFO mapred.JobClient: Task Id : attempt_201505201700_0005_r_000000_0, Status : FAILED
    Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out.
WARN mapred.JobClient: Error reading task outputAMR-DEV02.local
WARN mapred.JobClient: Error reading task outputAMR-DEV02.local
INFO mapred.JobClient:  map 100% reduce 16%
INFO mapred.JobClient:  map 100% reduce 0%
INFO mapred.JobClient: Task Id : attempt_201505201700_0005_r_000000_1, Status : FAILED
    Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out.
WARN mapred.JobClient: Error reading task outputEmbeddedQASrv.local
WARN mapred.JobClient: Error reading task outputEmbeddedQASrv.local
INFO mapred.JobClient:  map 100% reduce 16%

请注意。 EmbeddedQASrv.local(IP地址.192.168.115.80)和AMR-DEV02.local(IP地址.192.168.115.79)是我的从属节点主机名。

我的Hadoop群集由1个Master和2个Slaves组成。

这是我从控制台运行的命令。(emp_dept_data是一个包含empData和deptData文件的目录)

hadoop jar testdata/joindevice.jar JoinDevice emp_dept_data output15

但是,如果我运行此命令,MapReduce作业会成功(单个文件作为输入)

hadoop jar testdata/joindevice.jar JoinDevice emp_dept_data/empData output16

这是我的/ etc / hosts文件条目设置主节点。但是同样的条目也被复制到我的从属节点。

127.0.0.1               amr-dev01.local amr-dev01 localhost
::1             localhost6.localdomain6 localhost6
#Hadoop Configurations
192.168.115.78    master
192.168.115.79    slave01
192.168.115.80     slave02

我对错误以​​及在哪里检查确切的根本原因毫无头绪。

1 个答案:

答案 0 :(得分:1)

实际问题出在/ etc / hosts文件中。我评论了我的本地主机配置。 amr-dev01.local amr-dev01 localhost 而不是指定不同的名称,如master,slave01,slave02 ...我使用相同的主机名

192.168.115.78 amr-dev01 192.168.115.79 amr-dev02