整套大数据学习资料(视频+笔记)百度网盘无门槛下载:http://www.edu360.cn/news/content?id=3377

6.3 作业的调度

hadoop 小红牛 7℃ 0评论

早期版本的Hadoop使用一种非常简单的方法来调度用户的作业:按照作业提交的顺序,使用FIFO(先进先出)调度算法来运行作业。典型情况下,每个作业都会使用整个集群,因此作业必须等待直到轮到自己运行。虽然共
享集群极有可能为多个用户提供大量资源,但问题在于如何公平地在用户 之间分配资源,这要求有更好的调度器。生产作业需要及时完成,同时还
要保证正在进行较小临时查询的用户能够在合理时间内得到返回结果。

不久后,增加了设置作业优先级的功能,可以通过设置mapred.job.priority属性或JobClientsetJobPriority()方法来设置优先级(在这两种方法中,可以选择 VERY_HIGH, HIGH, NORMAL, LOW, VERY_LOW 中的任何值作为优先级)。在作业调度器选择要运行的下一个作业时,选择的是优先级 最高的作业。然而,在FIFO调度算法中,优先级并不支持抢占(preemption), 所以高优先级的作业仍然受阻于此前已经开始的、长时间运行的低优先级的作业。

Hadoop中,可以选择MapReduce的调度器。MapReduce 1的默认调度器 是最初基于队列的FIFO调度器,还有两个多用户调度器,分别为公平调度 器(Fair Scheduler)和容量调度器(Capacity Scheduler)

转载请注明:全栈大数据 » 6.3 作业的调度

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址