mapreduce的三大阶段:
- map阶段:并行处理的阶段
- shuffle阶段:从离开Mapper开启到进入Reduce之前的阶段
- reduce阶段:汇总整理的阶段
mapreduce的八大步骤
- 设置MapReduce的输入InputFormat类型,默认为TextInputFormat
- 自定义map函数,得到TextInputFormat的k1,v1;经过处理后传出k2,v2
- 分区--默认根据k2决定map中的数据该发送到哪个reduce中
- 排序--默认根据k2进行字典排序
- 规约--默认没有此阶段,是优化手段,可以提前合并
- 分组--相同k2的value会放到同一个集合中
- 自定义reduce函数,讲分组得到的k2,v2转成k3,v3输出
- 设置输出的OutputFormat,默认采用TextOutputFormat,将结果输出到一个纯文本文件中