YARN工作流程详解

98acea2f528c488e8aada30b72423f03.png

图1

cc52370a0fb743b8bd7b8fba984f60fc.png

图2

 

图1 -作业提交阶段:
1、client 提交job,向 ResourceManager【RM】 申请job_id;
2、RM 返回 job_id 及资源提交路径 给 client
3、client 把job所需的资源提交 到 2中指定的路径中
4、client 上传完成资源后,向RM 发送执行作业请求,RM接收到请求后,会创建一个 Application Manager【AM】 来管理这个job

作业初始化阶段:
5、AM 将 job添加到 Resource Scheduler 【RS】中; RS维护了一个队列,所有需要执行的job都会在这个队列中,并按一定的规则等待执行
6、当轮到你的job执行时,RS会通知AM有空闲NameManager【NM】 分配给它来执行job 了
7、AM让分配的NM 开辟 Container, 并在Container中 启动job对应的 Application Master【AMs】
8、AMs获取步骤3中在hdfs上提交的文件,根据分片信息生成 Task 【map/reduce task】

作业分配阶段:
9、AMs向RM申请运行Task的任务资源
10、RM把需要运行的Task分配给空闲的NM,NM分别领取Task并创建用于执行task的Container

任务运行阶段
11、AMs通知所有接受到该Task的NM启动计算
12、NM启动计算
13、如果NM上的该Task执行结束后还有新的Task,则向RM申请新的Container运行新的Task
14、所有Task执行完成即Job完成后,AMs会向RM申请注销自己

 

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值