Reduce方法处理来自地图的分组数据。但我想知道减少任务如何获取群组数据?如果map输出了许多分组数据,那么每个reduce任务只需读取相同数量的组吗?机制是什么?
答案 0 :(得分:0)
如何减少任务获取群组数据?
在Shuffle和Sort阶段处理
在此期间,由映射器发送的phasedData按键分组(与group by(key)一样),最后获得key,List<>结果。结果将发送给reducer。如果需要将结果发送到不同的减速器,则需要处理分区阶段,这是与Shuffle和Sort Phase不同的阶段。
此阶段由Hadoop框架完成,据我所知,您无需做任何事情或更改此阶段。
我还建议你看一下这个问题What is the purpose of shuffling and sorting phase in the reducer in Map Reduce Programming?