hadoop-yarn

Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序

Yarn基本架构

YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。

目前,Hadoop作业调度器主要有三种:FIFOCapacity Scheduler容量调度器Fair Scheduler公平调度器

yarn资源调度器

1Hadoop调度器重要分为三类:

        FIFO 、Capacity Scheduler(容量调度器)Fair Sceduler(公平调度器)

        Apache默认的资源调度器是容量调度器;

        CDH默认的资源调度器是公平调度器。

2)区别:

        FIFO调度器:支持单队列 、先进先出   生产环境不会用。

                按照到达时间,先到先服务

        容量调度器:支持多队列,保证先进入的任务优先执行。

                支持多个队列,每个队列可配置一定的资源,每个队列采用FIFO调度策略

                为了防止同一个用户独占资源,该调度器会对统一用户所提交的资源量进行限定

                首先,计算每个队列中正在运行的任务数与其分得的计算资源的比值,选择该比值最小的队列-最闲的

                其次,按照作业优先级和提交顺序,同时考虑用户资源量限制和内存限制对队列内任务排序。

                队列中按照任务的先后顺序依次执行

        公平调度器:支持多队列,保证每个任务公平享有队列资源

                支持多队列多用户,每个队列中的资源量可以配置,同一队列中的作业共享队列中的所有资源

                每个队列中job都会按照优先级分配资源,优先级越高,资源分配越多,但是每个job都会分配到资源

                在资源有限的情况下,理想情况下获得的资源与实际获得的资源会有一种差距,这个差距就叫做缺额

                同一队列中,job资源缺额越大,越先获得资源优先执行。作业按照缺额的高低来先后执行。

Yarn工作机制

        作业提交全过程详解

        (1)作业提交

                第1步:Client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。

                第2步:Client向RM申请一个作业id。

                第3步:RM给Client返回该job资源的提交路径和作业id。

                第4步:Client提交jar包、切片信息和配置文件到指定的资源提交路径。

                第5步:Client提交完资源后,向RM申请运行MrAppMaster

        (2)作业初始化

                第6步:当RM收到Client的请求后,将job添加到容量调度器中。

                第7步:某一个空闲的NM领取到该Job

                第8步:该NM创建Container,并产生MRAppmaster

                第9步:下载Client提交的资源到本地。

        (3)任务分配

                第10步:MrAppMaster向RM申请运行多个MapTask任务资源。

                第11步:RM运行MapTask任务分配给另外两个NodeManager另两个NodeManager分别领取任务创建容器。

        (4)任务运行

                第12步:MR向两个接收到任务的NodeManager发送程序启动脚本这两个NodeManager分别启动MapTaskMapTask数据分区排序。

                第13步:MrAppMaster等待所有MapTask运行完毕后,向RM申请容器,运行ReduceTask。

                第14步:ReduceTask向MapTask获取相应分区的数据。

                第15步:程序运行完毕后,MR会向RM申请注销自己。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星有印象

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值