文档章节

DRF资源分配算法

纳兰清风
 纳兰清风
发布于 2017/07/25 19:28
字数 589
阅读 75
收藏 0
点赞 1
评论 2

DRF算法


最近在看yarn的一些东西,看到DRF的时候特别纠结为什么第一个选的是B,查了一些资料,尼玛全是从书上扒下来的,千篇一律,没有任何参考价值。后来从mesos的一篇文章中看到,原来第一个选谁都可以,选A选B的结果是一样的。下面记录下调度器先选择A的调度顺序和资源分配情况是怎样的。

DRF简介

DRF是一种通用的多资源的最大最小公平分配策略,其核心思想是在多环境下一个用户的资源分配应该由用户的主导份额的资源决定。主导份额的资源是在所有已经分配给用户的多种资源中,占据最大份额的一种资源。简而言之,DRF试图最大化所有用户中最小的主导份额。

上面那段话从网上扒的,前面都还好,最后一句绕口令一样的总结也是说蒙了不少人。

算法的完整表述

  1. 初始化系统所拥有的资源总量R
  2. 初始化已经分配出去的资源总量C
  3. 初始化应用的主导份额S
  4. 初始化每个应用所分配到的资源U
  5. 每次选择已经分配给应用的主导资源占这种资源总量的比例最小的那个应用
  6. 更新R,C,S,U的值

可能第五步说的有点绕,举个例子,还是拿书中的例子说把,不过这里我们先选择A进行调度:

调度顺序User A 使用的资源User A主导资源User B使用资源User B主导资源CpuRAM
A(1/9, 4/18)4/18(0,0)01/94/18
A(2/9, 8/18)8/18(0,0)02/98/18
B(2/9, 8/18)8/18(3/9, 1/18)3/95/99/18
B(2/9, 8/18)8/18(6/9, 2/18)6/98/910/18
A(3/9, 12/18)12/18(6/9, 2/18)6/99/914/18

最后是分配了3个A和2个B,可以看到最后资源的使用情况和分配结果和书上是一样的,也就是说第一次调度优先调度谁对结果没有影响。

© 著作权归作者所有

共有 人打赏支持
纳兰清风
粉丝 30
博文 32
码字总数 32526
作品 0
朝阳
程序员
加载中

评论(2)

纳兰清风
纳兰清风

引用来自“如梦似幻梦幻泡影”的评论

经常更新点

@如梦似幻梦幻泡影 ……
如梦似幻梦幻泡影
如梦似幻梦幻泡影
经常更新点
Mesos DRF算法的论文阅读

dominant resource fairness算法是Mesos的灵魂,不同于hadoop基于slot-based实现的fair scheduler和capacity scheduler,学习阅读了一下论文“Dominant Resource Fairness: Fair Allocation......

谈吐鱼 ⋅ 2013/12/12 ⋅ 1

Mesos资源调度器的实现分析

1 mesos DRF介绍 mesos调度器是根据DRF(dominant resource fairness)算法实现的。DRF算法背后的直观想法是在多资源类型的环境下,一个用户的资源分配应该由用户的dominant share(主导份额...

谈吐鱼 ⋅ 2013/12/18 ⋅ 0

Max-min Fair 和 Dominant Resource Fairness 资源分配策略

1. Max-min Fair 分配过程是每次先把资源平分,如果有用户分到多余的资源就拿出来继续给其他的平分,这样保证申请者都可以公平分到资源。举个例子: Max-min Fair策略的不足是只能使用于一种...

searchworld ⋅ 2017/11/30 ⋅ 0

颠覆大数据分析之Mesos:集群调度及管理系统

正如前面“Mesos:动机”一节中所述,Mesos的主要目标就是去帮助管理不同框架(或者应用栈)间的集群资源。比如说,有一个业务需要在同一个物理集群上同时运行Hadoop,Storm及Spark。这种情况...

douxn ⋅ 2015/10/26 ⋅ 0

yarn fair资源池drf调度策略作业不执行的问题调查和分析

问题背景 yarn的fair类型资源池,是企业级hadoop用户常用的资源池类型。该资源池默认的队列调度策略是fair,即分配资源时只考虑内存限制。 对一个多个团队混合使用的大集群来说,如果想要在分...

鸿初 ⋅ 05/11 ⋅ 0

mesos

Mesos组件 master master负责slave资源和框架之间进行调度。任何时候,Mesos只有一个活动的master,由zookeeper使用分布式一致性算法选举产生。从设计角度来讲,master本身不会用了设计任何重...

datacube ⋅ 2016/07/20 ⋅ 0

Hadoop YARN配置参数剖析(4)—Fair Scheduler相关参数

首先在yarn-site.xml中,将配置参数yarn.resourcemanager.scheduler.class设置为org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler。 Fair Scheduler的配置选项包......

Zero零_度 ⋅ 2016/11/17 ⋅ 0

深入剖析EFS

[摘要]EFS是Encrypting File System,加密文件系统的缩写。本文详细介绍了EFS的加密方法及其原理。 创建时间:2005-06-01 更新时间:2005-06-03 文章属性:原创 文章提交:mrcool (mrcoolatz...

余二五 ⋅ 2017/11/22 ⋅ 0

Apache Hadoop 2.0.3 发布

Apache Hadoop 2.0.3发布了,在这次版本更新中,主要增加了以下几个特性: 1. 引入一种新的HDFS HA解决方案QJM 之前NameNode HA已经有两种解决方案,分别是基于共享存储区的Backup Node方案和...

oschina ⋅ 2013/02/17 ⋅ 2

学界 | 利用人脸图片准确识别年龄:上海大学研究者提出「深度回归森林」

  选自arXiv   作者:沈为等   机器之心编译   参与:李泽南、刘晓坤、黄小天      根据面部图像评估人物年龄通常被认为是一个非线性回归问题,其主要挑战是关于年龄的面部特征空...

机器之心 ⋅ 2017/12/23 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Kubeflow实战系列:利用TFJob导出分布式TensorFlow模型

介绍 本系列将介绍如何在阿里云容器服务上运行Kubeflow, 本文介绍如何使用TfJob导出分布式模型训练模型。 第一篇:阿里云上使用JupyterHub 第二篇:阿里云上小试TFJob 第三篇:利用TFJob运行...

全部原谅 ⋅ 22分钟前 ⋅ 0

007. 深入JVM学习—老年代

老年代空间的主要目的是用于存储由Eden发送来的对象,一般在经历好几次“Minor GC”还会保存下来的对象,才会被复制到老年代,这样就可以存放更多的对象,同时在老年代中执行GC的次数也相对较...

影狼 ⋅ 23分钟前 ⋅ 0

常见的一些C#开源框架或者开源项目

原:https://blog.csdn.net/qq_27825451/article/details/70666044 Json.NET http://json.codeplex.com/ Json.Net 是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Net环境下使用Json更......

whoisliang ⋅ 24分钟前 ⋅ 0

设计模式基本原理

刚开始接触编程这行的时候看过设计模式,当时感觉学这些模式没有太大的用处,当时也看不太懂。但是随着慢慢接触这一行,经过一段时间的编程以后,再回过头来看设计模式,发现设计模式的确是太...

王子城 ⋅ 27分钟前 ⋅ 0

阿里云全面支持IPv6!一文揽尽4位大咖精彩演讲

摘要: 自从去年11月以来,阿里巴巴高度重视数据中心的网络改造、云产品改造、应用及网络改造等多个维度,经过半年以来的建设,阿里云已经完成了域名解析等关键产品的分析,现在阿里云已经完...

传授知识的天使 ⋅ 38分钟前 ⋅ 0

windows Android sdk 配置

1、下载Android SDK,点击安装,直接默认路径即可! 下载地址:http://developer.android.com/sdk/index.html 2、默认路径安装后,安装完成,开始配置环境变量。 3、打开计算机属性——高级系...

阿豪boy ⋅ 40分钟前 ⋅ 0

bash shell script 简明教程

User <--> bash <--> kernel shell is not kernel or part of kernel various shells: tcsh, csh, bash, ksh find the using shell: echo $SHELL find all the shells: cat /etc/shells what......

mskk ⋅ 43分钟前 ⋅ 0

Service Mesh简史

William Morgan Service Mesh是一个相当新的概念,讲它的“历史”似乎有些勉强。就目前而言,Service Mesh已经在部分企业生产环境中运行了超过18个月,它的源头可以追溯到2010年前后互联网公...

好雨云帮 ⋅ 43分钟前 ⋅ 0

10个免费的服务器监控工具

监控你的WEB服务器或者WEB主机运行是否正常与健康是非常重要的。你要确保用户始终可以打开你的网站并且网速不慢。服务器监控工具允许你收集和分析有关你的Web服务器的数据。 有许多非常好的服...

李朝强 ⋅ 55分钟前 ⋅ 0

压缩工具之zip-tar

zip 支持目录压缩。使用yum安装zip包,使用yum安装unzip包 zip 1.txt.zip 1.txt #将1.txt文件压缩,新生成的压缩文件为1.txt.zip,原文件保留 zip -r 123.zip 123/ #-r对目录操作。将123/目录...

ZHENG-JY ⋅ 56分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部