文章目录
- Hive参数配置方式
- 1. 配置文件方式
- 2. 命令行参数方式
- 3. 参数声明方式
- 总结
Hive参数配置方式
1. 配置文件方式
默认配置文件:hive-default.xml
用户自定义配置文件:hive-site.xml
注意:用户自定义配置会覆盖默认配置。另外,Hive也会读入Hadoop的配置,因为Hive是作为Hadoop的客户端启动的,Hive的配置会覆盖Hadoop的配置。配置文件的设定对本机启动的所有Hive进程都有效。
2. 命令行参数方式
启动Hive时,可以在命令行添加-hiveconf param=value来设定参数。仅对本次Hive启动有效。
例如:
bin/hive -hiveconf mapred.reduce.tasks=10;
-- 查看参数设置:默认mapred.reduce.tasks=-1,-1 有reduce就开启,没有就不开启。
hive (default)> set mapred.reduce.tasks;
mapred.reduce.tasks=10
-- 查看当前所有的配置信息:
hive (default)> set;
3. 参数声明方式
可以在HQL中使用SET关键字设定参数,仅对本次Hive启动有效。
例如:
hive (default)> set mapred.reduce.tasks=10;
-- 查看参数设置
hive (default)> set mapred.reduce.tasks;
总结
上述三种设定方式的优先级依次递增。即配置文件 < 命令行参数 < 参数声明。注意某些系统级的参数,例如log4j相关的设定,必须用前两种方式设定,因为那些参数的读取在会话建立以前已经完成了。