阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Hadoop的MapReduce执行流程图

234次阅读
没有评论

共计 1523 个字符,预计需要花费 4 分钟才能阅读完成。

Hadoop 的 MapReduce shuffle 过程,非常重要。只有熟悉整个过程才能对业务了如指掌。

MapReduce 执行流程

Hadoop 的 MapReduce 执行流程图

输入和拆分:

不属于 map 和 reduce 的主要过程,但属于整个计算框架消耗时间的一部分,该部分会为正式的 map 准备数据。

分片(split)操作:

split 只是将源文件的内容分片形成一系列的 InputSplit,每个 InputSpilt 中存储着对 应分片的数据信息(例如,文件块信息、起始位置、数据长度、所在节点列表…),并不是将源文件分割成多个小文件,每个 InputSplit 都由一个 mapper 进行后续处理。

每个分片大小参数是很重要的,splitSize 是组成分片规则很重要的一个参数,该参数由三个值来确定:

minSize:splitSize 的最小值,由 mapred-site.xml 配置文件中 mapred.min.split.size 参数确定。

maxSize:splitSize 的最大值,由 mapred-site.xml 配置文件中 mapreduce.jobtracker.split.metainfo.maxsize 参数确定。

blockSize:HDFS 中文件存储的快大小,由 hdfs-site.xml 配置文件中 dfs.block.size 参数确定。

splitSize 的确定规则:splitSize=max{minSize,min{maxSize,blockSize}}

数据格式化(Format)操作:

将划分好的 InputSplit 格式化成键值对形式的数据。其中 key 为偏移量,value 是每一行的内容。

值得注意的是,在 map 任务执行过程中,会不停的执行数据格式化操作,每生成一个键值对就会将其传入 map,进行处理。所以 map 和数据格式化操作并不存在前后时间差,而是同时进行的。

spacer.gif

2)Map 映射:

是 Hadoop 并行性质发挥的地方。根据用户指定的 map 过程,MapReduce 尝试在数据所在机器上执行该 map 程序。在 HDFS 中,文件数据是被复制多份的,所以计算将会选择拥有此数据的最空闲的节点。

在这一部分,map 内部具体实现过程,可以由用户自定义。

3)Shuffle 派发:

Shuffle 过程是指 Mapper 产生的直接输出结果,经过一系列的处理,成为最终的 Reducer 直接输入数据为止的整个过程。这是 mapreduce 的核心过程。该过程可以分为两个阶段:

Mapper 端的 Shuffle:由 Mapper 产生的结果并不会直接写入到磁盘中,而是先存储在内存中,当内存中的数据量达到设定的阀值时,一次性写入到本地磁盘中。并同时进行 sort(排序)、combine(合并)、partition(分片)等操作。其中,sort 是把 Mapper 产 生的结果按照 key 值进行排序;combine 是把 key 值相同的记录进行合并;partition 是把 数据均衡的分配给 Reducer。

Reducer 端的 Shuffle:由于 Mapper 和 Reducer 往往不在同一个节点上运行,所以 Reducer 需要从多个节点上下载 Mapper 的结果数据,并对这些数据进行处理,然后才能被 Reducer 处理。

4)Reduce 缩减:

Reducer 接收形式的数据流,形成形式的输出,具体的过程可以由用户自定义,最终结果直接写入 hdfs。每个 reduce 进程会对应一个输出文件,名称以 part- 开头。

更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-10/147428.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1523字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中