如何在map中获得合并值减少了多个reducers

时间:2015-08-24 02:47:47

标签: hadoop

在map-reduce作业中,如果设置4个reducer来实现reducer作业。通过这样做,最终输出将生成4个部分文件。像:

part-r-00001
part-r-00002
part-r-00003
part-r-00004

在这种情况下如何获得合并值?如果我正在计算最大数量?上面的情况显然会产生4个不同的文件,它们会返回4个不同的值。

1 个答案:

答案 0 :(得分:1)

在您的案例中,简短的回答是use one reducer

但是当映射器输出的单个reducer无法处理时,我建议您使用two round mapreduce工作。

在第一轮中,您在每个reduce任务中输出合并值。在第二轮中,您使用一个reducer来计算第一轮缩减数据集的合并值。

如果那些仍然无法解决你的问题,也许你应该看看grouping comparator in hadoop map reduce