Hadoop 任务执行设置队列参考(转载)

3,803次阅读
没有评论

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

Hadoop

拥有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”

Hadoop

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版本:

Hadoop

MR引擎

在hive-site.xml中添加

<property>

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

<value>operations</value>

</property>

 

Hadoop

TEZ引擎

在hive-site.xml中添加

<property>

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

<value>operations</value>

</property>

Hadoop

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”

 

Hadoop

 

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”

 

Hadoop

转载自http://www.cognoschina.net/Article/121905

admin
版权声明:本站原创文章,由admin2017-06-07发表,共计1188字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)