开发者学堂课程【Hadoop 分布式计算框架 MapReduc:MapReduce 工作机制】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/94/detail/1536
MapTask 工作机制.
MapTask 工作机制如图4-12所示。
图4-12
接下来让我们进行 Maptask 工作机制和 Reudce 工作机制的学习,而两者相结合就是 MapReduce 详细工作流程,但在面试官询问时候的角度不一样,或是说法不同,我们应该有所了解。
主要内容
而 Mpatask 工作中主要分为以下五个阶段
首先获得待处理的信息,再处理切片信息,提交切片、架包、插包信息到集群,然后集群再启用相应的 MrAppMaster,启动之后,就开启相应的 Map Task。
而开启了 Map Task 之后才是真正的 Map Task 工作机制的开始,首先用RecorderReader 去读一行行的数据就是 Read 阶段
而读完之后返回相应的 k.v 数据,并把数据写入到 Mapper 之中去则是 Map 阶段
往出再写数据,到了环形缓冲区块的时候,就对应着Collect(收集)阶段,包括之后的分区、排序都属于收集阶段。
排序之后往磁盘中进行溢写就是溢写阶段,且溢写可能会有多个,溢写之后对其文件再进行合并就是 Combine 阶段,
而有些面试官就喜好于询问溢写阶段是什么?
Combine 阶段是什么?
答案就同我们图中所表示的一样。而 Collect 阶段做了哪些操作,
我们也要知道是分区和排序。而对于什么排序?默认是什么排序?
采用的手段是什么?
我们也要明白是对于 key,采用了外排等等。
以上就是所有 MapTask 的工作机制所有内容