Hive【基础知识 04】【Hive 属性配置的三种方式及配置的优先级说明】

本文介绍了配置Hive的三种方法:通过配置文件(hive-site.xml等)、命令行启动时使用--hiveconf和命令行启动后使用set。详细讲解了每种方式的适用场景和作用范围,并探讨了配置的优先级。对于Hive的使用者来说,理解这些配置方法和优先级是确保Hive正确运行的关键。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 方式一【配置文件】

使用配置文件指定的配置是永久有效的,Hive 有以下三个可选的配置文件:

  • hive-site.xml :Hive 的主要配置文件;
  • hivemetastore-site.xml: 关于元数据的配置;
  • hiveserver2-site.xml:关于 HiveServer2 的配置。

示例如下,在 hive-site.xml 配置 hive.exec.scratchdir 【这个目录是hdfs系统的】:

<property>
	<name>hive.exec.scratchdir</name>
	<value>/tmp/hive/test/hive_scratch</value>
	<description>Scratch space for Hive jobs</description>
</property>

2. 方式二【命令行启动时 --hiveconf】

在启动命令行 (Hive CLI / Beeline) 的时候使用 --hiveconf 指定配置,这种方式指定的配置作用于整个 Session。

hive --hiveconf hive.exec.scratchdir=/tmp/hive/test/hive_scratch

3. 方式三【命令行启动后 set】

在交互式环境下 (Hive CLI / Beeline),使用 set 命令指定。这种设置的作用范围也是 Session级别的,配置对于执行该命令后的所有命令生效。set 兼具设置参数和查看参数的功能。如下:

set hive.exec.mode.local.auto = true;

# 可以在交互模式下使用 set; 查询 hive 全部的配置信息 
hive> set hive.exec.mode.local.auto;
hive.exec.mode.local.auto=true

set 命令也可写进自定义配置文件,启动时使用 -i 指定配置文件即可,作用范围是一样的,配置参数比较多的情况可以采用这种方式,测试文件 hive-init.conf 的内容如下:

# hive.exec.mode.local.auto 默认值为 false 这里设置为 true 代表开启本地模式
set hive.exec.mode.local.auto = true;

# 使用 -i 可以在进入交互模式之前运行初始化脚本 相当于指定配置文件启动
[root@tcloud ~]# hive -i /home/hive/testFile/hive_init.conf;

4. 配置优先级

# 配置的优先顺序如下 (由低到高)【类似与前端样式的就近原则】:
hive-site.xml -> hivemetastore-site.xml ->  hiveserver2-site.xml -> --hiveconf -> set

5. 可配置参数

Hive 可选的配置参数非常多,在用到时查阅官方文档即可 AdminManual Configuration 根据需要进行设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

シ風

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值