博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MapReduce中作业调度机制
阅读量:5900 次
发布时间:2019-06-19

本文共 1231 字,大约阅读时间需要 4 分钟。

MapReduce中作业调度机制主要有3种:

1.先入先出FIFO

      Hadoop 中默认的调度器,它先按照作业的优先级高低,再按照到达时间的先后选择被执行的作业。
2.公平调度器(相当于时间片轮转调度)
      为任务分配资源的方法,其目的是随着时间的推移,让提交的作业获取等量的集群共享资源,让用户公平地共享集群。具体做法是:当集群上只有一个任务在运行时,它将使用整个集群,当有其他作业提交时,系统会将TaskTracker节点空间的时间片分配给这些新的作业,并保证每个任务都得到大概等量的CPU时间。
配置公平调度器
1.修改mapred-stie.xml 加入如下内容

mapred.jobtracker.taskScheduler
org.apache.hadoop.mapred.FairScheduler
mapred.fairscheduler.allocation.file
/opt/hadoop/conf/allocations.xml
mapred.fairscheduler.poolnameproperty
pool.name

2 . 在 Hadoop conf 下创建allocations.xml内容为:

样例:
5
5
2.0
6
3

3. 重启 JobTracker

4. 访问 http://jobTracker:50030/scheduler , 查看 FariScheduler 的 UI
5 . 提交任务测试

3.容量调度器
      支持多个队列,每个队列可配置一定的资源量,每个队列采用 FIFO 调度策略,为 了防止同一个用户的作业独占队列中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。调度时,首先按以下策略选择一个合适队列:计算每个队列中正在运行的任务数与其应该分得的计算资源之间的比值,选择一个该比值最小的队列;然后按以下策略选择该队列中一个作业:按照作业优先级和提交时间顺序选择 ,同时考虑用户资源量限制和内存限制。但是不可剥夺式。

转载地址:http://khesx.baihongyu.com/

你可能感兴趣的文章
Windows时间同步时出错|不能获取Internet时间 解决方法
查看>>
data目录迁移到web以外目录
查看>>
关于微信支付服务器证书更换的提醒
查看>>
MQTT 单个订阅消息量过大处理
查看>>
[转载]IE678兼容性前缀区分
查看>>
Logical Volume Manager(逻辑盘卷管理)
查看>>
SQL Server中使用自定义指定顺序排序
查看>>
Linux服务器安全配置小结(转)
查看>>
Orangepi 修改 Debian国内源
查看>>
[转]“AIR SDK 0.0: AIR SDK location “...\devsdks\AIRSDK\Win” does not exist.”问题解决~
查看>>
(九) spring 使用自定义限定符注解
查看>>
SmartCoder每日站立会议 01
查看>>
Linux pip命令报错 -bash: pip: command not found
查看>>
win8+Ubuntu双系统安装方法
查看>>
AngularJS内置指令 ng-xxx
查看>>
一个C#程序员学习微信小程序的笔记
查看>>
HDU 5512 Pagodas
查看>>
Linux下添加新硬盘,分区及挂载(存在空闲内存情况下)
查看>>
java关于jdbc的配置与使用步骤
查看>>
MyEclipse下Maven的安装配置
查看>>