输入输出参数错误Hadoop

时间:2013-03-31 18:49:05

标签: hadoop mapreduce

我有一个Mapper,其输入/输出参数为:
    (LongWritable,Text,WordPair,IntWritable)
带输入/输出参数的减速机为:
    (WordPair,IntWritable,WordPair,DoubleWritable)

我已将JobConf设置为:
     conf.setOutputKeyClass(WordPair.class);
     conf.setOutputValueClass(DoubleWritable.class);
     conf.setMapOutputValueClass(IntWritable.class);
     conf.setOutputFormat(TextOutputFormat.class);

但我得到的错误是:
-Java IOException DoubleWritable不是类
-Map工作失败

在进入减速阶段之前,工作也失败了。这部分配置是否正确?我相信我在这里与参数做了一些不匹配。

我是否需要提供更多信息?我正在做相对频率问题,我需要从Double&类型的reducer值输出。我正在使用Old Api。

1 个答案:

答案 0 :(得分:0)

我已经弄清楚了这个问题,我知道我正在回答我自己的问题,但这只是因为我想让别人知道他们是否有同样的问题。

这个问题即将到来,因为我已经提到过我的组合器类与reducer类相同,但是根据这个问题,mapper的输入/输出与reducer的输入/输出不同,而组合器应该具有相同的输入/输出映射器。

所以我删除了我设置组合器的行,它工作正常。