繁体   English   中英

在 session 期间何时设置 hive 参数?

[英]When to set hive parameters during a session?

我是新角色,其中一部分需要在托管和外部 hive 表中创建/插入数据。 我们在 hive session 的开头运行了几行“设置”参数,但我遇到了一些情况,例如,文件被合并用于某些分区(文件数量很少),但不是其他人(许多较小的文件),似乎是随机的日子。

我的问题是:什么时候需要输入我所有的 Hive 设置参数? 是否需要为我正在运行的每一个插入/命令/语句完成? 或者当我启动 Hive 时,仅在 Hive session 的开头一次?

这些是我们一直在使用的标准设置参数:

SET mapred.job.queue.name=yometrics;
SET hive.exec.dynamic.partition=true;
SET hive.exec.dynamic.partition.mode=nonstrict;
SET hive.exec.max.dynamic.partitions=2000;
SET hive.exec.max.dynamic.partitions.pernode=2000;
SET hive.merge.tezfiles=true;

您可以将配置放在文件的开头,它将适用于整个 session。

或者,您可以将公共参数放在单独的文件params.hql和每个脚本调用中

source /local/path/to/the/file/params.hql在开头。

你也可以把它们放在hive-site.xml

如果您在 Qubole/AWS 上,您也可以使用 bootstrap: https://docs.qubole.com/en/latest/user-guide/hive/bootstrap-script.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM