hadoop--Yarn资源调度器的基础架构、工作机制 与 作业提交全过程
目录
- 一、Yarn资源调度器
- Yarn 基础架构
- 二、YARN工作机制
- 三、作业提交全过程
- 1. HDFS、YARN、MapReduce三者关系
- 2. 作业提交过程(YARN)
- 3. 作业提交过程(HDFS & MapReduce)
一、Yarn资源调度器
⭐️:YARN是一个资源调度平台
,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台
,而MapReduce等运算程序则相当于操作系统上的应用程序
。
作用:
YARN负责管理集群资源;
负责给任务合理分配资源。
Yarn 基础架构
YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。
二、YARN工作机制
- MR程序提交到客户端所在的节点;
- YarnRunner向ResourceManager申请一个Application;
- RM将该应用程序的资源路径返回给YarnRunner;
- 该程序将运行所需资源提交到HDFS上;
- 程序资源提交完毕后,申请运行MrAppMaster;
- RM将用户的请求初始化成一个Task;
- 其中一个NodeManager领取到Task任务;
- 该NodeManager创建容器Container,并产生MrAppMaster;
- Container从HDFS上拷贝资源到本地;
- MrAppMaster向 RM申请运行MapTask资源;
- RM将运行MapTask任务分配给另外2x NodeManager,另外2x NodeManager分别领取任务并创建容器;
- MR向2x接收到任务的NodeManager发送程序启动脚本,这两个NodeManager分别启动MapTask,MapTask对数据分区排序;
- MrAppMaster等待所有MapTask运行完毕后,向RM申请容器,运行ReduceTask;
- ReduceTask向MapTask获取相应分区的数据;
- 程序运行完毕后,MR会向RM申请注销自己。
三、作业提交全过程
1. HDFS、YARN、MapReduce三者关系
2. 作业提交过程(YARN)
3. 作业提交过程(HDFS & MapReduce)
HDFS的读写数据流程==>
作业提交全过程:
- 一、作业提交
- Client调用job.waitForCompletion()方法,向整个集群提交MapReduce作业;
- Client向RM申请一个作业id;
- RM给Client返回该job资源的提交路径和作业id;
- Client提交jar包、切片信息和配置文件到指定的资源提交路径;
- Client提交完资源后,向RM申请运行MrAppMaster;
- 二、作业初始化
- 当RM收到Client的请求后,将该job添加到容器调度器中;
- 某一个空闲的NM领取到该job;
- 该NM创建Container,并产生MrAppMater;
- Container从HDFS上下载Client提交的资源到本地;
- 三、任务分配
- MrAppMater向RM申请运行多个MapTask任务资源;
- RM将运行MapTask任务分配给另外2x NodeManager,另外2x NodeManager分别领取任务并创建容器;
- 四、任务运行
- MR向 2x 接收到任务的NodeManager发送程序启动脚本,这两个NodeManager分别启动MapTask,MapTask对数据分区排序;
- MrAppMaster等待所有MapTask运行完毕后,向RM申请容器,运行ReduceTask;
- ReduceTask向MapTask获取相应分区的数据;
- 程序运行完毕后,MR会向RM申请注销自己。
- 五、进度和状态更新
YARN中的任务将其进度和状态(包括counter)返回给应用管理器,客户端每秒(通过 mapreduce.client.progressmonitor.pollinterval 设置)向应用管理器请求进度更新,展示给用户。
- 六、作业完成✅
除了向应用管理器请求作业进度外,客户端每5秒都会通过调用waitForCompletion()方法来检查作业是否完成。时间间隔可以通过mapreduce.client.completion.pollinterval 来设置。作业完成之后,应用管理器和Container会清理工作状态,作业的信息会被历史服务器存储以备后续用户核查。
hadoop--Yarn资源调度器的基础架构、工作机制 与 作业提交全过程相关推荐
- Hadoop 3.x(Yarn)----【Yarn 资源调度器】
Hadoop 3.x(Yarn)----[Yarn 资源调度器] 1. Yarn 基础架构 2. Yarn 工作机制 3. 作业提交全过程 4. Yarn 调度器和调度算法 1. 先进先出调度器(FI ...
- 2.Hadoop 分布式计算框架:Mapreduce(扩展)——Yarn资源调度器
2.Yarn资源调度器 2.3 YARN resourcemanager-HA搭建 2.3.1 文档查看与集群规划 RM高可用官方网址: http://hadoop.apache.org/docs/r ...
- 【十八掌●内功篇】第六掌:YARN之YARN资源调度器
这一篇博文是[大数据技术●降龙十八掌]系列文章的其中一篇,点击查看目录:大数据技术●降龙十八掌 系列文章: [十八掌●内功篇]第六掌:YARN之架构和原理 [十八掌●内功篇]第六掌:YARN之Reso ...
- Hadoop的资源调度器
Hadoop的资源调度器 概念 资源调度器分类 FIFO(先进先出调度器) Capacity Scheduler(容量调度器) Fair Scheduler(公平调度器) 概念 目前,Hadoop作业 ...
- Hadoop之资源调度器与任务推测执行
Hadoop之资源调度器 目录 资源调度器概述 先进先出调度器(FIFO) 容量调度器(Capacity Scheduler) 公平调度器(Fair Scheduler) 任务的推测执行 1. 资源调 ...
- 大数据培训课程Yarn资源调度器作业提交全过程
作业提交全过程 1.作业提交过程之YARN,如图4-25所示. 大数据培训课程 图4-25 作业提交过程之Yarn 作业提交全过程详解 (1)作业提交 第1步:Client调用job.waitForC ...
- 【Yarn】工作机制及任务提交流程
本文以mr程序为例,解释yarn的工作机制及任务提交流程: 0. mr程序提交任务到客户端所在节点: 1.节点上的YarnRunner向ResourceManager申请一个Application: ...
- Hadoop大数据分布式文件系统hdfs的工作机制
HDFS集群分为两大角色:NameNode.DataNode NameNode负责管理整个文件系统的元数据 DataNode 负责管理用户的文件数据块 namenode工作机制 namenode职责: ...
- 大数据培训课程Yarn资源调度器任务的推测执行
任务的推测执行 1.作业完成时间取决于最慢的任务完成时间 一个作业由若干个Map任务和Reduce任务构成.因硬件老化.软件Bug等,某些任务可能运行非常慢.大数据培训 思考:系统中有99%的Map任 ...
最新文章
- php留言板实现留言评价,PHP实现留言板功能的思路
- C#实现邮件发送的功能
- 关于计算Java程序运行时间
- 单片机涡轮流量传感器_青天仪表为您介绍安装涡轮流量计需要注意问题
- Java项目:药品管理系统(java+SpringBoot+VUE+Mybatis+Maven+Mysql)
- OpenHarmony啃论文俱乐部玩法攻略
- 使用CubeMX配置STM32L476RG,Timer触发ADC采集通过DMA搬运
- 百度竞价账户关键词分类
- MEC@JavaSE@实战篇@笔记05@计算机网络技术基础
- 八股总结(二)计算机网络与网络编程
- 基于BERT的新闻文本分类
- Gn 与 Ninja学习和使用
- java棒棒糖和皮卡丘八音盒_如何比别人抢先一步买到肯德基的皮卡丘八音盒?我有两个小建议...
- Elasticsearch 第三方工具包Bboss的简单使用
- 微积分(一)一般概念以及从圆的面积怎么来?
- 雷军:《我十年的程序员生涯》系列之三(失败的大学创业经历)
- 局域网-无法访问网上邻居解决方法
- 雅虎开始关闭韩国业务并裁员 200 人
- 身体语言密码_《身体语言密码》,将个性分析应用到成功的三法则
- 26-爬取链家二手房成交的房产信息【简单】