可以从文件加载hiveconf变量吗(与hiveql文件分离)

vom3gejh  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(326)

我经常有一大块hiveql,我想用一些变量的不同设置运行多次。
一个简单的例子是:

set mindate='2015-01-01 00:00:00'
set maxdate='2015-04-01 00:00:00'
select * from my_table where the_date between ${hiveconf:mindate} and ${hiveconf:maxdate}

然后通过 hive -f myfile.sql > myout.log 稍后,我想更改变量并重新运行。我还需要一个每次运行时变量值的记录。
因此,我目前制作的hiveql文件的副本除了变量值之外都是相同的。但是,这显然容易出错,因为如果需要更改实际的hiveql,那么必须在每个文件中更改它。
理想情况下,我可以将所有设置存储在一个json文件(或其他文件)中,并使hiveql文件完全动态。有什么办法吗?

9njqaruj

9njqaruj1#

在配置文件中设置变量,并将此文件加载到hql脚本中:

source /path_to_your_config_file/config.hql;

相关问题