MapReduce编程规范
MapReduce的开发一共有八个步骤,其中Map阶段分为2个步骤,Shuffle阶段4个步骤,Reduce阶段分为2个步骤。
- Map阶段2个步骤
-
设置InputFormat类,将数据切分为Key-Value(K1和V1)对,输入到第二步。
-
自定义Map逻辑,将第一步的结果转换成另外的 Key-Value (K2,V2)对,输出结果
- Shuffle阶段4个步骤
-
对输出的Key-Value对进行分区
-
对不同分区的数据按照相同的 Key排序
-
(可选)对分组过的数据初步规约,降低数据的网络拷贝
-
对数据进行分组,相同Key的value放入一个集合中
- Reduce阶段2个步骤
-
对多个Map任务的结果进行排序以及合并,编写Reduce函数实现自己的逻辑,对输入的Key-Value进行处理,转为新的Key-Value(K3和V3)输出
-
设置OutputFormat处理并保存Reduce输出的Key-vajue数据