大数据技术Hadoop——YARN
Posted 阳哥赚钱很牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据技术Hadoop——YARN相关的知识,希望对你有一定的参考价值。
YARN是Hadoop中的分布式资源调度系统,在Hadoop2.x版本才引入的概念。
一、概述
Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式(不止管自己计算机的调度,还可以管理其他的计算机调度问题)的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序。
二、YARN的基本架构
YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。
三、YARN的工作机制
程序运行完毕后,MR会向RM注销自己。
四、YARN的重要概念
1)Yarn并不清楚用户提交的程序的底层运行机制,具体的由Application Master去做
2)Yarn只提供运算资源的调度(用户程序向Yarn申请资源,Yarn就负责分配资源)
3)Yarn中的主管角色叫ResourceManager
4)Yarn中具体提供运算资源的角色叫NodeManager
5)这样一来,Yarn其实就与运行的用户程序完全解耦,就意味着Yarn上可以运行各种类型的分布式运算程序(mapreduce只是其中的一种),比如mapreduce、storm程序,spark程序……
6)所以,spark、storm等运算框架都可以整合在Yarn上运行,只要他们各自的框架中有符合Yarn规范的资源请求机制即可。
7)Yarn就成为一个通用的资源调度平台,从此,企业中以前存在的各种运算集群都可以整合在一个物理集群上,提高资源利用率,方便数据共享。
五、YRAN中的资源调度器
Hadoop作业调度器主要有三种:FIFO、Capacity Scheduler和Fair Scheduler。Hadoop2.7.2默认的资源调度器是Capacity Scheduler。
1、先进先出调度器(FIFO)
其服务器节点资源处在队列中,先进先出,谁先来的谁先运行,在运行过程中,会把所有YARN资源占据。其中job里的所有的MapTask、ReduceTask都需要一个一个的排队等待执行。
2、容量调度器(Capacity Scheduler)
如上图,把整个YARN资源分成三部分,这样同时可以执行三个job
3、公平调度器(Fair Scheduler)
雨露均沾,其中job的优先级通过差额进行计算,服务器中资源少的时候不建议用这个调度方法。
以上是关于大数据技术Hadoop——YARN的主要内容,如果未能解决你的问题,请参考以下文章