[急呀~]hadoop队列调度 capacity-scheduler问题, 谢谢大家帮个忙啦~

Gloria_bing 2013-08-01 11:22:16
假如配置3个队列A,B,C, 资源分配分别为30%,40%,30%
然后提交到B两个job(1,2), job1需要资源40%, job2需要20%, 这时capacity队列的分配情况回是job1分配到B, job2会分配到A.


我认为, 如果资源不够用了,第二个job应该出于阻塞状态,等待job1运行完毕再运行的呀


capacity队列是否可以配置严格限制资源的分配呢?

或者hadoop有没有一种队列调度可以达到严格现在资源的分配的效果的呢?

急急急吖~


大家帮帮忙啦~
...全文
454 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gloria_bing 2013-08-05
  • 打赏
  • 举报
回复
虽然你的回答没有根本上解决我的问题, 但还是谢谢你啦~
引用 1 楼 FENGQIYUNRAN 的回复:
Capacity Scheduler的每个队列中采用的调度策略是FIFO算法。 Capacity Scheduler默认情况下不支持优先级,但是可以在配置文件中开启此选项,如果支持优先级,调度算法就是带有优先级的FIFO。 Capacity Scheduler不支持优先级抢占,一旦一个作业开始执行,在执行完之前它的资源不会被高优先级作业所抢占。 Capacity Scheduler对队列中同一用户提交的作业能够获得的资源百分比进行了限制以使同属于一用户的作业不能出现独占资源的情况。 根据你的需求重新配置下2,3,4项,然后 配置完成后,重启jobtracker即可。 stop-mapred.sh start-mapred.sh 注意在提交Job时,记得设置job.set(),指定组或者Pool;
FeelTouch Labs 2013-08-03
  • 打赏
  • 举报
回复
请参考:http://blog.csdn.net/jiedushi/article/details/7920455
FeelTouch Labs 2013-08-03
  • 打赏
  • 举报
回复
Capacity Scheduler的每个队列中采用的调度策略是FIFO算法。 Capacity Scheduler默认情况下不支持优先级,但是可以在配置文件中开启此选项,如果支持优先级,调度算法就是带有优先级的FIFO。 Capacity Scheduler不支持优先级抢占,一旦一个作业开始执行,在执行完之前它的资源不会被高优先级作业所抢占。 Capacity Scheduler对队列中同一用户提交的作业能够获得的资源百分比进行了限制以使同属于一用户的作业不能出现独占资源的情况。 根据你的需求重新配置下2,3,4项,然后 配置完成后,重启jobtracker即可。 stop-mapred.sh start-mapred.sh 注意在提交Job时,记得设置job.set(),指定组或者Pool;

20,808

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧