Yarn原理解析

本文详细解析了Yarn的原理,包括Hadoop1.X中的资源管理和任务调度问题,以及Hadoop2.X中引入Yarn解决的单点故障、压力过大和耦合问题。Yarn作为资源管理器,采用container容器模型,通过ResourceManager和NodeManager实现资源分配。MapReduce在Yarn上运行,AppMaster负责任务调度,提高了系统的稳定性和效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Hadoop1.X

从Hadoop1.X中出现的缺点就可以知道,为啥会有Yarn的出现

1、JobTracker:资源管理、任务调度

2、TaskTracker:任务管理、资源汇报

3、Client:

(1)会根据每次的计算数据,咨询NameNode元数据(block),计算split,得到一个切片【清单】,map的数量就有了。
split是逻辑的,block是物理的,block身上有(offset、location),split和block有映射关系,由此可以得出split包含偏移量,以及split对应的map任务应该移动到哪些节点,可以支持计算向数据移动。
(2)生成计算程序未来运行时的相关【配置文件】
(3)未来的移动应该相对可靠:Cli会将split清单、配置xml上传到hdfs的目录中
(4)Cli会调用JobTracker,通知要启动一个计算程序了,并且告知文件都放在了hdfs的哪些地方

4、JobTracker收到启动程序之后:

(1)从hdfs中取回【split清单】
(2)根据自己收到的TaskTracker汇报的资源,最终确定一个split对应的map应该去到哪一个节点【确定清单】
(3)未来,TaskTracker在心跳的时候会取回分配给自己的任务信息

5、TaskTracker:

(1)在心跳取回任务后,从hdfs中下载xml等到本机
(2)启动任务描述中的MapTask/ReduceTask(最终,代码在某一个节点被启动,是通过Cli上传,TaskTracker下载,计算向数据移动的实现)

在Hadoop1.X中,由JobTracker做资源管理、任务调度,有以下三个问题:

1、单点故障
2、压力过大
3、

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值