在hadoop中链接mapreduce工作

时间:2013-08-16 17:04:32

标签: hadoop mapreduce

我是Hadoop的新手。我的任务是找到一个薪水最高的员工。 在我的firstmap类中,我拆分了这个单词并将键和值放在这个 -

outputcollector.collect("salary",salary);

在我的减速机中,我找到了最高工资,并设置了这样的输出

outputcollector.collect("max salary",maxsalary);

现在我想在另一个映射器中使用此reducer的输出。 我构建了一个像这样的链

JobConf mapAConf = new JobConf(false);
        ChainMapper.addMapper(conf, mymap.class, LongWritable.class, Text.class, Text.class, IntWritable.class, true, mapAConf); 

JobConf reduceConf = new JobConf(false);
        ChainReducer.setReducer(conf, myreduce.class, Text.class, IntWritable.class, Text.class, IntWritable.class, true, reduceConf);

JobConf mapCConf = new JobConf(false);
       ChainReducer.addMapper(conf, LastMapper.class, Text.class, IntWritable.class, Text.class, IntWritable.class, true, mapCConf);

但是减速器没有被执行。对此有何帮助?

1 个答案:

答案 0 :(得分:0)

你需要创建&为mapper和amp设置相同的JobConf;减少单个Map / Reduce Job。