Hive进阶(5)----yarn的资源调度策略

yarn的资源调度策略

YARN(Yet Another Resource Negotiator)是Apache Hadoop的资源管理器。它负责集群资源的管理和作业调度。YARN的资源调度是通过几个关键组件来实现的:

  1. ResourceManager(RM):RM是YARN集群的主要组件之一。它负责整个集群的资源管理和调度。RM有两个主要组件:调度器(Scheduler)和应用程序管理器(ApplicationManager)。

  2. 调度器(Scheduler):调度器负责将集群资源分配给不同的应用程序。它有不同的实现,如容量调度器(Capacity Scheduler)和公平调度器(Fair Scheduler),每种调度器都有不同的调度策略。

  3. 应用程序管理器(ApplicationManager):应用程序管理器负责接收来自客户端的应用程序提交请求,并为每个应用程序分配一个应用程序主管(ApplicationMaster)。

  4. NodeManager(NM):NM是每个节点上的代理,负责管理该节点上的资源和容器。它向RM报告节点的可用资源,并执行由RM分配的容器。

一、资源调度流程

1-mapreduce提交计算任务给ResourceManager

2-RM中的applicationmanager负责创建applicationMaster进程

3-applicationMaster和applicationmanager保持通讯

4-applicationMaster找RM中的ResourceScheduler(资源调度器)申请计算需要的资源

5-applicationMaster通知对应的NodeManger创建资源空间container

6-在资源空间中先运行map阶段的计算,先运行reduce阶段的计算

7-map和reduce运行期间会将自身状态信息汇报给applicationMaster

8-计算完成后,applicationMaster通知NodeManger释放资源

9-资源释放后再通知applicationmanager把自身(applicationMaster)关闭释放资源

二、yarn的资源调度策略

先进先出

  • 谁先抢到资源谁使用所有资源

  • 资源利用效率低

  • 如果遇到一个计算时间较长的任务,保资源占用后。其他的任务就无法计算

容量调度

  • 将资源分成多份,不同计算任务使用不同的资源大小

公平调度

  • 资源全部给一个计算任务使用,但是当计算任务中的某个map或reduce计算完成后,可以将自身资源释放掉给其他计算任务使用
相关推荐
captain3761 分钟前
MySQL增删改查
数据库·mysql
IvorySQL10 分钟前
PostgreSQL 技术日报 (3月27日)|当 AI 开始自动创建数据库
数据库·postgresql·开源
wx_xkq128811 分钟前
营销智脑V3企业级AI平台架构设计:优秘智能完成从单点工具到全链路生态布局
大数据·人工智能
芒果披萨15 分钟前
sql实操
数据库·sql·mysql
不剪发的Tony老师15 分钟前
FlowScope:一款注重隐私的SQL数据血缘分析工具
数据库·sql·数据血缘
风吹落叶325717 分钟前
redis 部署方式(分布式)
数据库·redis·分布式
2601_9553631527 分钟前
技术赋能B端拓客:号码核验行业的革新与价值重构,氪迹科技法人,股东号码筛选系统,阶梯式价格
大数据·人工智能·重构
大大大大晴天️28 分钟前
大数据实时计算-反压机制剖析
大数据·flink·spark streaming
zxsz_com_cn33 分钟前
设备预测性维护数据采集方案设计
大数据
机器学习之心34 分钟前
风电预测数据集说明文档
数据库