我已经学过Mapreduce。但是,我不了解这个Mapreduce平均问题。

  • 方案1:我想按Mapreduce平均1到10。因此,我在下面拆分了三张 map 。

    A. map 1、1、2、3 /平均:2

    B. map 2:4,5,6 /平均:5

    C. map 3:7,8,9,10 /平均:8.5

    然后我取平均2、5、8.5
    因此平均值(1-10)为5.17。
  • 方案2:然后我在下面拆分了另外三张 map 。

    A. map 1、1、2、3 /平均:2

    B. map 2:4,5,6,7 /平均:5.5

    C. map 3:8,9,10 /平均:9

    然后我平均取2,5.5,9
    所以平均值(1-10)是5.5
  • 我想要场景1中的5.5(正确答案)。如何解决此问题?

  • hadoop - 如何解决mapreduce中的平均问题?-LMLPHP

    最佳答案

    您的 map 输出将不是平均值。它应该是所有数字的总和。

    然后,将所有映射器强制为单个化简器,然后将所有总和求和,然后除以得到平均值

    关于hadoop - 如何解决mapreduce中的平均问题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55674972/

    10-16 03:20