MapReduce作业调度

可以通过设置mapred.job.priority属性或JobClient的setJobPriority()方法来设置优先级(在这两种方法中,可以选VERY_HIGH,HIGH,NORMAL,LOW,VERY_LOW中的任何值作为优先级)。在作业调度器选择要运行的下一个作业时,选择的是优先级最高的作业。然而,在FIFO调度算法中,优先级并不支持抢占,所以高优先级的作业任然受阻于此前已经开始的,长时间运行的低优先级的作业。MR1的默认调度器是最初基于队列的FIFO调度器,还有两个多用户调度器,分别为公平调度器和容量调度器。

01、公平调度器

公平调度器的目标是让每个用户公平共享集群能力。如果只有一个作业在运行,就会得到集群的所有资源。随着提交的作业越来越多,闲置的任务槽会以“让每个用户公平共享集群”这种方式进行分配。某个用户的耗时短的作业将在合理的时间内完成,即便另一个用户的长时间作业正在运行而且还在运行过程中。 作业都放在作业池中,在默认情况下,每个用户都有自己的作业池。提交作业数较多的用户,不会因此而获得更多的集群资源。可以用map和reduce的任务槽数来定制作业池的最小容量,也可以设置每个池的权重。 公平调度器支持抢占机制,所以,如果一个池在特定的一段时间内未能公平共享资源,就会中止运行池中得到过多资源的任务,把空出来的任务槽让给运行资源不足的作业池。 公平调度器是一个后续模块。要使用它,需要将其JAR文件放在HADOOP的类路径,即将它从Hadoop的contrib/fairscheduler目录复制到lib目录。随后,像下面这样设置mapred.jobtracker.taskScheduler属性: org.apache.hadoop.mapred.FairScheduler

02、容量调度器

集群由很多队列组成(类似于公平调度器的任务池),这些队列可能是层次结构的(因此,一个队列可能是另一个队列的子队列),每个队列被分配有一定的容量。这一点与公平调度器类似,只不过在每个队列内部,作业根据FIFO方式(考虑优先级)进行调度。本质上,容量调度器允许用户或组织(使用队列进行定义)为每个用户或组织模拟出一个使用FIFO调度策略的独立MR集群。相比之下,公平调度器(实际上也支持作业池内的FIFO作业调度,使其类似于容量调度器)强制每个池内公平共享,使运行的作业共享池的资源。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我的博客

xss攻击

xss攻击简介: XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS...

3356
来自专栏张戈的专栏

Nginx发布1.9.0版本,新增支持TCP代理和负载均衡的stream模块

昨天在公司微信群,CTO 分享了这个消息,对运维来说以后基于 TCP 协议的后端业务的高可用又多了一个新的选择,实在是棒极了! 一直以来,Nginx 并不支持 ...

3065
来自专栏加米谷大数据

技术干货 | MapReduce作业调度

可以通过设置mapred.job.priority属性或JobClient的setJobPriority()方法来设置优先级(在这两种方法中,可以选VERY_H...

2736
来自专栏吴伟祥

Linux Partition scheme 分区方案(一)

根分区包含Linux系统所有的目录。如果在安装系统时只分配了/分区,那么上面的/boot、/usr和/var将都包含在根分区中,也就是这些分区将占用根分区的空间...

2742
来自专栏FreeBuf

聊一聊万恶的锁首

当手持8倍镜的98K都不能在使用程序时干掉万恶的锁首时,内心是十万头羊驼奔跑的场景,那我们就来聊一聊市面上常见的锁首方式。 ① :设置OpenHomePage、...

2207
来自专栏FreeBuf

NSA武器库之Eternalchampion(永恒冠军)复现

准备工作 攻击机1:带有漏洞利用工具集的XP,并且此次需要准备好WinHex, IP 172.26.97.35 攻击机2:Kali, IP 172.26.97....

2816
来自专栏坚毅的PHP

hadoop学习笔记

map-reduce  原文:http://blademaster.ixiezi.com/2010/03/27/google-mapreduce%E4%B8%...

3957
来自专栏机器学习从入门到成神

2013百度校招笔试真题以及解析(内存管理及其优缺点总结)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/articl...

1321
来自专栏Hadoop实操

如何在Redhat中安装R的包及搭建R的私有源

继上一章如何在Redhat中配置R环境后,我们知道对于多数企业来说是没有外网环境的,在离线环境下如何安装R的包,能否搭建R的私有源对R的包进行管理。

8897
来自专栏睿哥杂货铺

Linux 性能诊断:负载评估

从load avgerage等总括性的数据着手,参考CPU使用率和I/O等待时间等具体的数字,从而自顶向下快速排查各进程状态。

29410

扫码关注云+社区

领取腾讯云代金券