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

本文共 1284 字,大约阅读时间需要 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 调度策略,为 了防止同一个用户的作业独占队列中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。调度时,首先按以下策略选择一个合适队列:计算每个队列中正在运行的任务数与其应该分得的计算资源之间的比值,选择一个该比值最小的队列;然后按以下策略选择该队列中一个作业:按照作业优先级和提交时间顺序选择 ,同时考虑用户资源量限制和内存限制。但是不可剥夺式。

转载于:https://www.cnblogs.com/lixiaolun/p/4927349.html

你可能感兴趣的文章
android 自定义按钮实现 home键 和返回键
查看>>
Android App测试要点
查看>>
深入理解C指针之三:指针和函数
查看>>
android(9)_数据存储和访问3_scard基本介绍
查看>>
eclipse自动部署问题
查看>>
Asp.Net验证码2
查看>>
Android APK反编译就这么简单 详解(附图)
查看>>
Python 随机数
查看>>
面向程序员的数据库访问性能优化法则
查看>>
创建, 发布自己的 Vue UI 组件库
查看>>
有关Android插件化思考
查看>>
redis 集群搭建以及redislive监测部署
查看>>
HTML5系列之meta
查看>>
react-router 4.x
查看>>
Wepy目录结构
查看>>
JS面试理论题
查看>>
Spring Boot 参考指南(Spring Integration)
查看>>
October CMS - 快速入门 7 显示列表和详情页
查看>>
Django之Ubuntu环境搭建
查看>>
webpack4+vue实现多页面,结合Hbuilder快速开发APP
查看>>