hive 指定yarn queue

Hive提供三种可以改变环境变量的方法,分别是:

(1)修改${HIVE_HOME}/conf/hive-site.xml配置文件;

(2)命令行参数;

(3)在已经进入cli时进行参数声明。下面分别来介绍这几种设定。

上述三种设定方式的优先级依次递增。即参数声明覆盖命令行参数,命令行参数覆盖配置文件设定。

方法一

在Hive中,所有的默认配置都在${HIVE_HOME}/conf/hive-default.xml文件中,如果需要对默认的配置进行修改,可以创建一个hive-site.xml文件,放在${HIVE_HOME}/conf目录下。里面可以对一些配置进行个性化设定。在hive-site.xml的格式如下:

<configuration>
    <property>
        <name>hive.metastore.warehouse.dir</name
        <value>/user/hive/warehouse</value
        <description>location of default database for the warehouse</description>
    </property>
</configuration>

方法二

在启动Hive cli的时候进行配置,可以在命令行添加-hiveconf param=value来设定参数,例如:

hive --hiveconf mapreduce.job.queuename=queue

这样在Hive中所有MapReduce作业都提交到队列queue1中。这一设定对本次启动的会话有效,下次启动需要重新配置。

扫描二维码关注公众号,回复: 8522558 查看本文章

方法三

在已经进入cli时进行参数声明,可以在HQL中使用SET关键字设定参数,例如:

hive> set mapreduce.job.queuename=queue;

这样也能达到方法二的效果。这种配置也是对本次启动的会话有效,下次启动需要重新配置。在HQL中使用SET关键字还可以查看配置的值,如下:

hive> set mapreduce.job.queuename;

mapreduce.job.queuename=queue

如果set后面什么都不添加,这样可以查到Hive的所有属性配置,如下:

hive> set;

datanucleus.autoCreateSchema=true
datanucleus.autoStartMechanismMode=checke
datanucleus.cache.level2=false
datanucleus.cache.level2.type=none
datanucleus.connectionPoolingType=DBCP
datanucleus.identifierFactory=datanucleus

一次会话中这条语句可以生效多次,每条执行任务的语句提交的队列在他之前最近指定的队列

hive -e ‘sql语句’的方式执行hive语句,中可以使用set 方法来指定队列,一个hive -e  就相当于开启一次cli ,所以设置一次,这一个hive -e 中可以包含多条语句 都会有效

发布了48 篇原创文章 · 获赞 5 · 访问量 1166

猜你喜欢

转载自blog.csdn.net/qq_34897849/article/details/103598137
今日推荐