gpt4 book ai didi

hadoop - 什么时候我们不在 Mapreduce 中使用 Combiner?

转载 作者:可可西里 更新时间:2023-11-01 16:23:36 26 4
gpt4 key购买 nike

每个 Hadoop 开发人员都知道 Combiner 是优化的关键 mapreduce ,但它是可选的。它可以最小化带宽 并提高 mapreduce 作业性能。这里我的问题是,hadoop 默认情况下会设置许多功能,例如数据局部性问题,但不会将 Combiner 设置为默认值。为什么?这意味着在所有情况下都不推荐组合器?我们什么时候不使用组合器?如果我将其设为默认值,那有什么问题吗?

最佳答案

如果 reduce 函数既是可交换的又是结合的,则可以使用 Combiner。这是因为在以任意顺序随机播放之前,值是在本地组合的。


可交换 - 我们处理值操作的顺序在某种程度上对结果没有影响:

1 + 2 + 3 = 1 + 3 + 2

关联 - 我们处理值操作的顺序在某种程度上对结果没有影响:

(1 + 2) + 3 = 1 + (2 + 3)

所以用combiner e就好了。 G。对于 sum() 操作,但有些操作不起作用。因此,决定组合器是否可用于特定算法始终是程序员的责任。

关于hadoop - 什么时候我们不在 Mapreduce 中使用 Combiner?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29696815/

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