Yarn调度器和调度算法详解

楼高1年前技术文章605

目前,Hadoop作业调度器主要有三种:FIFO、容量(Capacity Scheduler)和公平(Fair Scheduler)。Apache Hadoop3.1.3默认的资源调度器是Capacity Scheduler。CDH框架默认调度器是Fair Scheduler

一、先进先出调度器(FIFO)

FIFO调度器(First In First Out):单队列,根据提交作业的先后顺序,先来先服务。

image.png

优点:简单易懂;

缺点:不支持多队列,生产环境很少使用

二、容量调度器(Capacity Scheduler)

Capacity Scheduler是Yahoo开发的多用户调度器

1、多队列:每个队列可配置一定的资源量,每个队列采用FIFO调度策略。

2、容量保证:管理员可为每个队列设置资源最低保证和资源使用上限。

3、灵活性:如果一个队列中的资源有剩余,可以暂时共享给那些需要资源的队列,而一但该队列有新的应用程序提交,则其他队列借调的资源会归还给该队列。

4、多租户

支持多用户共享集群和多应用程序同时运行。

为了防止同一用户的作业独占队列的中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。

三、公平调度器(Fair Scheduler)

Fair Schedulere是Facebook开发的多用户调度器。




公平调度器特点:

1、与容量调度器相同点

(1)多队列:每个队列可配置一定的资源量,每个队列采用FIFO调度策略。

(2)容量保证:管理员可为每个队列设置资源最低保证和资源使用上限。

(3)灵活性:如果一个队列中的资源有剩余,可以暂时共享给那些需要资源的队列,而一但该队列有新的应用程序提交,则其他队列借调的资源会归还给该队列。

(4)多租户

支持多用户共享集群和多应用程序同时运行。

为了防止同一用户的作业独占队列的中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。

2、与容量调度器不同点

(1)核心调度策略不同

容量调度器:优先选择资源利用率低的队列

公平调度器:优先选择对资源的缺额比例大的

(2)每个队列可以单独设置资源分配方式

容量调度器:FIFO、DRF

公平调度器:FIFO、FAIRDRF


























相关文章

CDP实操--HDFS角色迁移

CDP实操--HDFS角色迁移

    hdfs角色迁移功能在cdp页面中就可以实现该功能,迁移的时间与namenode元数据大小,以及block数量多少有关,注意迁移过程中集群需要关闭,要预留出操作时间窗口。1、页面选择迁移角色2...

MySQL优化器特性(二)MRR优化

MySQL优化器特性(二)MRR优化

Index Range Scan索引范围扫描的一般步骤:1、根据where条件,从B+树定位到第一条记录。2、从索引页子节点中获取到行号(rowid),根据rowid回表查询数据。3、使用额外的whe...

Spark优化之配置参数

Spark优化之配置参数

一、资源参数优化所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各 个使用资源的地方,通过调节各种参数,来优化资源使用的效率,从而提升Spark作业的执行性能。以下参数就是Spark中...

Mysql删除binlog

binlog 是记录所有数据库表结构变更(例如CREATE、ALTER TABLE…)以及表数据修改(INSERT、UPDATE、DELETE…)的二进制日志。一、手动删除直接在 /var/lib/m...

数据湖技术之iceberg(八)Spark与Iceberg整合DDL操作

数据湖技术之iceberg(八)Spark与Iceberg整合DDL操作

1.CREATE TABLE 创建表Create table 创建Iceberg表,创建表不仅可以创建普通表还可以创建分区表,再向分区表中插入一批数据时,必须对数据中分区列进行排序,否则会出现文件关闭...

触发kube-apiserver流控导致ACK集群中节点状态异常

触发kube-apiserver流控导致ACK集群中节点状态异常

问题现象ack集群中一个节点状态为notready,但是排查节点上的核心组件:kubelet、kube-proxy、flannel、etcd等状态均为正常。排查步骤1、查日志分别排查核心组件以及系统日...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。