【问题标题】:Is Partitioner required for single reducer in map reducer?mapreduce中的单个reducer是否需要分区?
【发布时间】:2018-07-23 14:27:42
【问题描述】:

我刚刚开始学习 hadoop。我知道分区器决定将哪个键值对发送到哪个减速器。如果只有一个减速器,我的问题是需要分区器?

我在 stackover fow 中看到了类似的问题,但我仍然无法理解答案。

【问题讨论】:

  • 有一个默认的分区器,所以是的,它是必需的。 FWIW,普通的 MapReduce 编程并没有做那么多,除非进行收集或聚合,否则您通常会拥有多个 Reducer

标签: hadoop mapreduce


【解决方案1】:

是的,当多个reducer就位时,Partitioner通过计算mapout键上的默认哈希函数或在自定义分区键中定义的默认哈希函数,将map输出的键值对重定向到特定的reducer。如果只有一个reducer,尽管Partitioner存在,但所有的key值都要转移到同一个reducer。默认的 Partitioner 始终存在于 mapreducer 流中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2016-04-27
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    • 2019-02-25
    • 1970-01-01
    相关资源
    最近更新 更多