【发布时间】:2018-01-10 20:28:36
【问题描述】:
在为 MapReduce 作业编写代码时,如果我们手动设置 reducer 的数量,则发送到某个 reducer 的数据可能很大。在这种情况下,reducer 任务可以同时在多个节点上运行吗?也许是通过将List<Value>中的数据与一个键对应,然后在内部合并?
如果 reducer 不能自动缩放它要使用的节点数量,那么我们如何处理可能存在与键对应的值分布不均的情况? default hadoop MapReduce partitioner根据hash的值进行分区,并没有考虑到key对应的List<Value>的大小。
【问题讨论】: