无法初始化CDH5.3中的任何输出收集器

时间:2015-05-24 14:07:36

标签: hadoop mapreduce cloudera

15/05/24 06:11:40 INFO mapreduce.Job: Task Id : attempt_1432456238397_0004_m_000000_0, Status : FAILED
Error: java.io.IOException: Unable to initialize any output collector
    at org.apache.hadoop.mapred.MapTask.createSortingCollector(MapTask.java:412)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:439)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:415)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1642)

我正在使用CDH 5.3 cloudera quickstart,我写了MapReduce程序。当我在shell上运行时,我会超越异常。

任何人都可以帮我解决这个问题,如何解决

1 个答案:

答案 0 :(得分:0)

错误"无法初始化任何输出收集器" 表示作业无法启动容器,可能有多种原因相同。但是,必须检查hdfs处的容器日志以确定错误原因。

在此特定实例中,mapreduce.task.io.sort.mb值的值输入大于2047 MB,但是它允许的最大值为2047 MB,因此高于它的任何值都会导致作业失败将提供的值标记为无效。

<强>解决方案:

设置mapreduce.task.io.sort.mb < 2048MB

的值

<强>参考:

https://support.pivotal.io/hc/en-us/articles/205649987-Map-Reduce-job-failed-with-Unable-to-initialize-any-output-collector-

CDH5.2: MR, Unable to initialize any output collector

https://community.cloudera.com/t5/Storage-Random-Access-HDFS/HBase-MapReduce-Job-Error-java-io-IOException-Unable-to/td-p/23786