Mapreduce:比映射器更多的缩减器?

时间:2013-08-02 17:49:05

标签: hadoop mapreduce

在我的分布式系统课程中,我们开始讨论分布式计算的地图缩减模型。在map-reduce架构中拥有比映射器更多的reducer有什么好处?

注意:Google搜索此问题会就此问题提供相互矛盾的意见。

1 个答案:

答案 0 :(得分:8)

假设您的数据量很小,那么您不需要运行这么多映射器来并行处理输入文件。

但是,如果映射器生成的<key,value>对很大且很大。因为你可以并行处理更多的<key,value>对,所以有更多的减少器是有意义的。

让我们考虑一下你的映射器输出有10个键的情况,每个键有100个值,所以如果你有10个reducers,你可以并行处理所有键。

现在假设您的映射器输出100个键,每个键中有10个值。然后有100个减速器将并行处理所有键。 (当然,一次运行100个减速器会涉及网络成本)

因此,根据映射器输出的数据类型,您可以决定减速器的最佳数量。