gpt4 book ai didi

hadoop - 创建比我们拥有的节点更多的 reducer 是否有意义?

转载 作者:可可西里 更新时间:2023-11-01 14:39:10 25 4
gpt4 key购买 nike

所以主要认为良好的 reduce 阶段是良好的分区分布。但是例如我们无法控制它,或者不知道如何做到这一点(我们不知道我们的数据)。

是否大量的 reducer 会增加每个 reducer 数据分布更好的机会?这个问题的常见做法是什么?

最佳答案

数据通常使用模散列分区在 reducer 之间均匀分布。这意味着(有效地)键的哈希除以 reducer 的数量,余数是值被发送到的 reducer 的索引。例如,如果您的 key 的哈希值是 47269893425623,并且您有 10 个化简器,47269893425623 % 10 = 3,那么第 4 个化简器(记住,索引为 0)获取该记录。

如果您的记录有热点键,这意味着很大一部分值具有完全相同的键,那么添加缩减器可能无济于事(您只会增加开销 - 所有这些键仍会转到相同的 reducer )。

如果您没有这种情况,那么添加 reducer 可能会有所帮助。请记住,在 mapper 和 reducer 之间有一个网络复制阶段。您将 reducer 拆分得越多,映射器和 reducer 之间需要完成的复制就越多,因此这部分工作会变慢。

关于hadoop - 创建比我们拥有的节点更多的 reducer 是否有意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11040296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com