如何为Mapreduce设计键值对以查找集合中的最大值



我是MapReduce程序员的初学者。你能帮我为以下问题设计键值对吗?

问题陈述 - 找到最大值并将其与键一起打印

输入:

   Key       Value
   ABC       10
   TCA       13
   RTY       23
   FTY       45

左侧列上的键将是唯一的。不允许重复。

输出:

   FTY       45

由于 45 是所有值中的最大值,因此必须与键一起打印。

你能帮我设计map((和reduce((函数吗?这两个函数的键值对是什么?

在映射器中,记住最大的数字

class Mapper {
   V maxV;
   K maxK;
   map(K, V, context) {
      if (V > maxV) { maxV = V; maxK = K; }
   }
   cleanup(context) {
      context.store(maxK, maxV)
   }
}

在减速器中执行相同的操作。将作业配置为仅具有 1 个化简器。

最新更新