本文使用多种计算引擎实现词频统计
MapReduce实现
编写MapReduce程序分成三部分:Mapper
、Reducer
、Driver
业务逻辑
MapTask
阶段处理每个数据分块的单词统计分析,每遇到一个单词,将其转换为一个k-v
对,如<hello, 1>
的形式,发送给ReduceTask
进行汇总ReduceTask
阶段接受MapTask
的结果,做汇总计数
Mapper接受的四个泛型
KEYIN
:输入的键的类型,在这里指的是每一行起始的偏移量VALUEIN
:输入的值的类型,在这里指的是一行的内容KEYOUT
:输出的键的类型,这里指的是单词,允许重复的VALUEOUT
:输出的值的类型