5

在我的分布式系统课程中,我们开始讨论分布式计算的 map reduce 模型。在 map-reduce 架构中,reducer 多于 mapper 有什么好处?

注意:谷歌搜索这个问题提供了关于这个问题的相互矛盾的意见。

4

1 回答 1

9

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

但是,如果<key,value>映射器生成的对很大且多样化,那么拥有更多的 reducer 是有意义的,因为您可以<key,value>并行处理更多数量的对。

让我们考虑一个例子,你的 mapper 输出有 10 个键,每个键有 100 个值,所以如果你有 10 个 reducer,你可以并行处理所有的键。

现在假设您的映射器输出 100 个键,每个键中有 10 个值。然后拥有 100 个减速器将并行处理您的所有密钥。(当然,同时运行 100 个减速器会产生网络成本)

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

于 2013-08-02T18:33:09.847 回答