humidy
作者humidy·2015-10-22 11:56
信息分析/架构师·某公司

Hadoop 任务执行设置队列参考

字数 1578阅读 8906评论 0赞 0

本文为胡旻编写,转载请注明

对于集群我们经常会启用公平调度或容量调度来满足多用户的需求,这个时候我们需要去设定相应的队列以及队列的优先级。这里以用到MR和TEZ引擎为例。我这里的队列如下:

1_1.png

拥有marketing和operations两个队列分别占用30%和70%的能力

总的来说设置如下:

作业提交到的队列:mapreduce.job.queuename/tez.queue.name

MR作业优先级:mapreduce.job.priority

TEZ作业提交到的队列:

程序类型

MR引擎

TEZ引擎

Java JAR形式

支持

支持

Hive形式

支持

支持

Pig形式

支持

支持

 

Pig版本:

MR引擎

在Pig脚本中加入

SET mapreduce.job.queuename operations;

特别的执行脚本

su -l hdfs -c "/usr/hdp/2.2.6.0-2800/pig/bin/pig -l /tmp/pig.log /tmp/id.pig"

1_2.png


TEZ引擎

在Pig脚本中加入

SET mapreduce.job.queuename operations;

特别的执行脚本地方:

su -l hdfs -c "/usr/hdp/2.2.6.0-2800/pig/bin/pig -x tez -l /tmp/pig.log /tmp/id.pig"


Hive版本:

1_3.png


MR引擎

在hive-site.xml中添加

<property>

    <name>mapred.job.queue.name</name>

    <value>operations</value>

  </property>


 

1_4.png


TEZ引擎

在hive-site.xml中添加

<property>

    <name>tez.queue.name</name>

    <value>operations</value>

  </property>



1_5.png

JavaJAR版本:

MR引擎

举例:

su -l hdfs -c "/usr/hdp/current/hadoop-client/bin/hadoop jar /usr/hdp/2.2.6.0-2800/hadoop-mapreduce/hadoop-mapreduce-examples-2.6.0.2.2.6.0-2800.jar teragen -D mapreduce.job.queuename=operations 10000 test/teragenout"

 


1_6.png

 

Tez引擎

举例:

su -l hdfs -c "hadoop jar /usr/hdp/2.2.6.0-2800/tez/tez-examples-0.5.2.2.2.6.0-2800.jar orderedwordcount -D mapreduce.job.queuename=operations /user/hdfs/input/test.txt /user/hdfs/out"

 


1_7.png

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广