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计算完成后,可以将自身资源释放掉给其他计算任务使用
相关推荐
+VX:Fegn08954 分钟前
计算机毕业设计|基于springboot + vue小型房屋租赁系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
aliprice9 分钟前
逆向拆解:用速卖通图片搜索破解竞品设计,找到你的差异化定价空间
大数据·跨境电商·电商
hg011827 分钟前
埃及:在变局中重塑发展韧性
大数据·人工智能·物联网
win x28 分钟前
Redis 分布式锁
数据库·redis·分布式
2501_9445210032 分钟前
rn_for_openharmony商城项目app实战-商品评价实现
javascript·数据库·react native·react.js·ecmascript·harmonyos
冉冰学姐42 分钟前
SSM心理健康系统59q3n(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架应用·心理健康系统·心理文章
heartbeat..44 分钟前
零基础学 SQL:DQL/DML/DDL/DCL 核心知识点汇总(附带连接云服务器数据库教程)
java·服务器·数据库·sql
傻啦嘿哟1 小时前
Python中的@property:优雅控制类成员访问的魔法
前端·数据库·python
向量引擎小橙1 小时前
“2026数据枯竭”警报拉响:合成数据如何成为驱动AI进化的“新石油”?
大数据·人工智能·深度学习·集成学习
飞Link1 小时前
【大数据】SparkSQL常用操作
大数据·数据挖掘·spark