Hadoop基础教程-第7章 MapReduce进阶(7.2 MapReduce工作机制)(草稿)

来源:互联网 发布:html模板仿淘宝 编辑:程序博客网 时间:2024/05/16 23:55

第7章 MapReduce进阶


原文地址:http://blog.csdn.net/chengyuqiang/article/details/73382034

7.2 MapReduce工作机制

本节将从作业的角度来解读一个作业时如何在MapReduce计算框架下提交、运行等。注意,在Hadoop 2.x中,MapReduce的工作机制已经被YARN的工作机制所替代。
YARN框架下的Mapreduce工作流程如下图所示:

这里写图片描述
从图中可以看出YARN运行MapReduce的过程有11个步骤,我们分别来看看:

(1) 客户端向集群提交作业,启动一个job。
(2) Job从资源管理器ResourceManager获取新的作业应用程序ID。
(3) 客户端检查作业的输出情况,计算输入分片,并将作业jar包、配置、分片信息等作业资源复制到HDFS。
(4)Job通过调用资源管理器ResourceManager的 submitApplication() 方法提交作业。
(5) ResourceManager接收到作业后,将作业请求传递给调度器。ResourceManager分配一个container,然后ResourceManager在NodeManager的管理下,在container中启动一个ApplicationMaster进程。
(6)ApplicationMaster对作业进行初始化,并保持对作业的跟踪,判断作业是否完成。
(7)ApplicationMaster根据存储在HDFS中的分片信息确定Map和Reduce的数量,获取计算出的输入分片,为每个分片创建一个map任务。并创建reduce任务。
(8)ApplicationMaster为本次作业的Map和Reduce以轮询的方式向ResourceManager申请container。master为作业向资源管理器请求一个容器来运行任务。
(9)ApplicationMaster获取到container后,与NodeManager进行通信启动container。
(10)container从HDFS中获取作业的jar包、配置和分布式缓存文件等,将任务需要的资源本地化。
(11)container启动Map或Reduce任务。

阅读全文
0 0
原创粉丝点击