我是MapReduce程序员的初学者。你能帮我设计一下以下问题的键值对吗?
问题陈述 - 找到最大值并将其与密钥一起打印
输入:
Key Value
ABC 10
TCA 13
RTY 23
FTY 45
左侧栏中的键将是唯一的。不允许重复。
输出:
FTY 45
由于45是所有值中最高的,因此必须与键一起打印。
你能帮我设计map()和reduce()函数吗?这两个函数的键值对是什么?
答案 0 :(得分:1)
在mapper中,记住最大的数字
class Mapper {
V maxV;
K maxK;
map(K, V, context) {
if (V > maxV) { maxV = V; maxK = K; }
}
cleanup(context) {
context.store(maxK, maxV)
}
}
在减速机中做同样的事情。将作业配置为只有1个reducer。