YARN的Fair Scheduler和Capacity Scheduler
关于Scheduler
YARN有四种调度机制:Fair Schedule,Capacity Schedule,FIFO以及Priority;
其中Fair Scheduler是资源池机制,进入到里面的应用是共享pool里面的资源;只有当资源配比发生紧张的时候,才会根据权重来进行调整;
Capacity则是基于队列的,每个队列都会被分配资源比例,这种资源比例是固定;所以没有资源共享的概念
MapR,cloudera都是默认采用Fair Scheduler,Ambari(Hortonwork)默认使用Capacity Scheduler;
Fair Scheduler是一个池子的概念,就是来了一个应用就扔到这个池子里面,大家共享这个池子里面的资源;Fair Scheduler提供了一种Weigth的概念,就是比重,最后鬼根据比重来为各个池子分配资源(本质和Capacity里面的capacity一样);同时她还提供了max resource,min resource的可选配置,就是制定资源下限和上限;这个属性的配置是可以覆盖weigth(权重)的。但是并不推荐使用max min资源配置,因为不够灵活;
Capacity Scheduler是一个队列概念,来了一个应用,如果发现资源不够了,则根据FIFO规则排队;什么时候资源够了,再用。
Fair Scheduler可以配置自动创建pool,但是Capacity则无法创建队列;其实本质差别就是在于一个是pool共享资源的概念(YARN-3319),一个是queue队列形式利用资源。但是通过看到Capacity有计划也实现一版fairness appliction;如果真是这样,那么两者区别就变得很小了。
参考文章
https://people.csail.mit.edu/matei/talks/2009/hadoop_summit_fair_scheduler.pdf
https://www.quora.com/On-what-basis-do-I-decide-between-Fair-and-Capacity-Scheduler-in-YARN
https://www.quora.com/Apache-Hadoop-Whats-the-difference-between-Fair-Scheduler-and-Capacity-Scheduler
备注
我发现https://www.quora.com/是一个很牛逼的网站,在浏览关于YARN调度器差别的时候,发现回帖的都是apache里面的人!
YARN的Fair Scheduler和Capacity Scheduler的更多相关文章
- 利用yarn capacity scheduler在EMR集群上实现大集群的多租户的集群资源隔离和quota限制
转自:https://m.aliyun.com/yunqi/articles/79700 背景 使用过hadoop的人基本都会考虑集群里面资源的调度和优先级的问题,假设你现在所在的公司有一个大hado ...
- <Yarn> <Capacity Scheduler> <Source Code>
Yarn capacity scheduler 首先要知道, [Attention: RM有两个组件,其中Scheduler完全就只是负责资源的分配:ApplicationsManager则负责接受a ...
- Hadoop的三种调度器FIFO、Capacity Scheduler、Fair Scheduler(转载)
目前Hadoop有三种比较流行的资源调度器:FIFO .Capacity Scheduler.Fair Scheduler.目前Hadoop2.7默认使用的是Capacity Scheduler容量调 ...
- Capacity Scheduler 队列设置
先附一个官网地址 Capacity Scheduler是YARN中默认的资源调度器. 相关参数配置: 资源分配相关参数 ``` (1) capacity:队列的资源容量(百分比). 当系统非常繁忙时, ...
- MapReduce多用户任务调度器——容量调度器(Capacity Scheduler)原理和源码研究
前言:为了研究需要,将Capacity Scheduler和Fair Scheduler的原理和代码进行学习,用两篇文章作为记录.如有理解错误之处,欢迎批评指正. 容量调度器(Capacity Sch ...
- Hadoop Capacity Scheduler源码实现剖析
作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2013/09/13/had ...
- 二 Capacity Scheduler 计算能力调度器
官网的写的太难懂,参考:http://www.360doc.com/content/14/0603/14/14935022_383254798.shtml Capacity Scheduler 一种可 ...
- YARN资源调度策略之Capacity Scheduler
背景 yarn默认使用的是最简单的FIFO调度器,即一个default队列,所有用户共享,分配资源也是先到先得,没有优先级之分.有时一两个任务就把资源全占了,其他任务吃不到资源造成饥饿,显然这样的资源 ...
- Hadoop Yarn Capacity Scheduler
Capacity 调度器配置 <property> <name>yarn.resourcemanager.scheduler.class<name> <val ...
随机推荐
- Java编码方式再学
一直以来对编码方式对了解不是很深入.建议读下这几篇博文 学点编码知识又不会死:Unicode的流言终结者和编码大揭秘 编码研究笔记 这几篇博文上回答了内心存在的一些问题,这些问题可能也是大家经常遇到的 ...
- 修改tomcat默认端口号8080
1.背景 在默认情况下,tomcat的端口是8080,使用了两个tomcat,那么就需要修改其中的一个的端口号才能使得两个同时工作. 2.方法 2.1改动一 那么,如何修改tomcat的端口号呢?首先 ...
- 【转】ext4+delalloc造成单次写延迟增加的分析
转自 http://blog.tao.ma/?p=58 这篇文章是淘宝内核组的刘峥同学在内部技术论坛上发表的一篇文章,但是由于刘峥同学目前没有blog,征得本人同意,贴在我的blog上,如果大家喜欢, ...
- 安装ectouch点击安装按钮无反应
首先按F12: 看看”控制台“或者”网络“是否说找不到页面404 如果出现404,则是/mobile/index.php?m=install&c=index&a=importing方法 ...
- Python写入CSV文件的问题
这篇文章主要是前几天我处理数据时遇到的三个问题: Python写入的csv的问题 Python2与Python3处理写入写入空行不同的处理方式 Python与Python3的编码问题 其实上面第3个问 ...
- day6-面向对象基础篇
一.面向对象引子及概念 结合编程的一些理论知识和实践,可以总结出目前存在以下编程模式: 1. 面向过程 按照业务逻辑和实现过程步骤来逐步垒代码,代码编写的逻辑即对应于实际实现的步骤过程,核心是过程两个 ...
- Oracle 常用系统包
一.DBMS_OUTPUT(用于输入和输出信息) 二.DBMS_JOB(用于安排和管理作业队列) 三.dbms_pipe(类似UNIX系统的管道) 四.dbms_alert(用于生成并传递数据库预警信 ...
- Unity 3D 无法显示中文的解决方法
大家开始用unity3D时想必都会遇到一个问题,使用中文时会乱码.这是由于编码方式不同导致的,具体解决方法如下: 程序写代码什么的最好下个像Notepad++类似的工具,这里使用Notepad++修改 ...
- spring --解析自定义注解SpringAOP(配合@Aspect)
1:首先,声明自定义注解 @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD}) public @interface DtT ...
- LeetCode OJ:Palindrome Partitioning(回文排列)
Given a string s, partition s such that every substring of the partition is a palindrome. Return all ...