Hadoop中MapReduce的执行过程

MapReduce的流程

以统计一段文本的词频为例,介绍MapReduce的过程:

  1. 输入数据:对输入的文本数据split(分片,数据分片默认splitSize等于64M),每片内的数据作为单个Map Worker的输入,于是多个Map Worker便可以同时工作
  2. MapMap Worker处理接收到的数据,Map Worker输出的每一条数据都会有一个指定的key,具有相同key值的数据会被发送到同一个Reduce Work
  3. Shuffle:在进入 Reduce 阶段之前,MapReduce 框架会对数据按照 Key 值排序,使得具有相同 Key 的数据彼此相邻,这会有助于降低从Mapper到 Reducer数据传输量
  4. Reduce:相同Key的数据会传送至同一个Reduce Worker,每个Reduce Worker会对Key相同的多个数据进行Reduce操作

参考:

  1. MapReduce概述 - 开发| 阿里云
  2. Hadoop中MapReduce执行流程详解 – Alpha – Carpe diem
原文地址:https://www.cnblogs.com/swordspoet/p/14742056.html