yarn运行整体资源调度流程

在这里插入图片描述

并行度说明:

maptask的并行度是指map阶段有多少个并行的maptask共同处理任务

注意点:
1.因为每个切片的大小默认情况下是128M,如果一个文件是260M,那么切了128M后还剩132M,如果剩余的长度/splitSize  <=   1.1,就将我们剩余的全部并入一个切片中。
2.小文件情场:默认的切片机制会造成大量的maptask处理很少的数据量,这样效率很低下:
解决方案:
a.上上策:在把小文件上传到hdfs之前就进行预处理,事先合并后在上传;
b.上策:事先将小文件进行合并(自己写合并程序);
c.中下策:修改getSplits()的逻辑,把多个小文件当成大文件来处理。
1.2运行过程说明:

1.首先由Driver向resourceManager提交请求运行一个Job命令

2.resourceManager同意之后,返回给一个jobid和存储切片,jar文件的位置

3.客户端根据返回的信息将切片和jar文件上传到hdfs的指定位置中,都是临时文件

4.Driver申请一个容器,运行进程。默认值是1.5G

5.resourceMAnager同意之后,生成容器任务,放进资源队列

6.当任务开始执行的时候,创建任务容器,mapReduceAppManager加载任务信息

7.Driver发送一个启动命令,运行程序,mapReduceAppManager接受命令,加载配置信息

8.并且向ResourceManager申请container运行maptask(yarnchild)

9.maptask领到资源之后,根据mapReduceAppManager加载的任务信息下载jar包和切片 配置文件等

10.mapTask开始运行,进行数据处理

11.当mapTask运行结束后,向resourceManager申请新的容器,运行新的yarnchild(reduce Task)

12.reduceTask开始运行,拉取数据

13.当所有的任务执行完毕之后,mapReduceAppManager向resourceManager注销本次的job,并推出程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值