尝试制定一个hadoop作业,它不同于普通的字数计算示例。我的输入数据格式如下:
makePush,1964
makePush,459
makePush,357
opAdd,2151
opAdd,257
opStop,135
我想把这些传给警察 Mapper()
,然后 Reducer()
函数,但我在规范方面遇到了问题。
Mapper<KEYIN,VALUEIN,KEYOUT,VALUEOUT>
比如说, opAdd
会是一个 KEYIN
,和 257
会是一个 VALUEIN
. 随后是所有 opAdd
会是一个 KEYOUT
相关数字之和为 VALUEOUT
有道理,不是吗?
但是,如何以编程方式实现这一点?在我看来,从理论上讲,这和字数计算的例子并没有太大区别。
1条答案
按热度按时间vaj7vani1#
例如,opadd将是一个keyin,257将是一个valuein
不,键应该是一个longwritable,它是文件中的偏移标记,用于指定当前Map任务读取文件的位置。
值将是text,它将是
opAdd,257
,你会的toString().split(",")
分离数据