Hadoop集群作业调度算法

1.简介

 分布式文件系统在调度作业的时候可以通过参数来设置job作业调度。开门见山,常见的有三种,

先进先出FifoScheduler,默认的调度算法,先进先出的方式处理应用,只有一个队列可提交应用,没有应用优先级可以配置;

公平调度器FairScheduler,多队列的,多用户共享资源.程序在运行的时候可以在客户端设置优先级,也可以设置抢占;

容量调度器CapacityScheduler.多队列的,依靠作业,如果需求资源少了,优先级就会高一些,需求资源多了,优先级就会低一些。

 其中,默认的是先进先出调度,不需要我们进行设置,其他两种公平和容量调度需要在conf中进行设置。

2.配置

 配置CapacityScheduler:
修改配置文件mapred-site.xml,容量调度器是多队列的,需要指定的,有一个默认的,default。更多配置在:conf/capacity-scheduler.xml
      <property>
        <name>mapred.jobtracker.tasktracker</name>
        <value>org.apache.hadoop.mapred.CapacityTaskScheduler</value>
      </property>
      <property>
        <name>mapred.queue.names</name>
        <value>default</value>
      </property>

配置FairScheduler:
      修改配置文件mapred-site.xml,然后重启集群即可,更多配置在:conf/fair-scheduler.xml
      <property>
        <name>mapred.jobtracker.tasktracker</name>
        <value>org.apache.hadoop.mapred.FairSchedler</value>
      </property>

注意:调度算法顺序需要关注1.提高作业的吞吐量;2.要考虑优先级。

猜你喜欢

转载自blog.csdn.net/learn_zhangk/article/details/79140379