在Hive命令行工具中,可以使用系统环境变量、Hive配置文件中定义的属性以及Hive命令行工具中定义的变量。通过 set 命令,可以访问变量和修改变量的值。不同的变量,存储在不同的命名空间中。通过命名空间可以访问到变量。
- 系统环境变量,存储于 evn 命名空间中,该命名空间中的变量是 只读的;
- Hive配置属性,存储于 hiveconf 命名空间中,该命名空间中的属性是 可读写的;
- Hive命令行变量,存储于 hivevar 命名空间中,该命名空间中的变量是 可读写的;
- Java系统属性,存储于 system 命名空间中,该命名空间中的变量是 可读写的。
系统环境变量
在Hive命令行工具中访问系统环境变量,只能读取变量,通过 env:变量名 来访问变量,命名空间不能省略:
hive> set env:HOME;
env:HOME=/root
Hive 配置属性
在 Hive 命令行工具中,可以新增、修改、读取 Hive 配置属性。