hadoop - Hive 传递属性/文本文件以读取 -hiveconf 中的多个变量值

标签 hadoop hive hiveql

目前我可以使用下面的命令:

hive -f hive-job.hql -hiveconf city='CA' -hiveconf country='US'

这里我只传递了 2 个变量值。但是我有大约 15 到 20 个变量值需要通过 -hiveconf 传递。这些值存储在 properties/text 文件中。

是否有可能通过 -hiveconf 读取文件?

最佳答案

没有直接的方法将属性值添加到 Hive 变量。但我知道有两种方法可能会有所帮助:

1.) 将 hive-job-varibales.hql 文件中的所有变量保存为

set x=1;

set y=2;
...
Then call this file in the main file i.e hive -f hive-job.hql like this:

select ... from ..
...
hive-job-varibales.hql

2.) 使用 Java 代码读取属性文件并将属性值转换为 Hive 变量格式,然后使用 Hive JDBC 连接连接到 Hive Server 并按您想要的顺序运行查询。

根据您的要求,我建议使用第二个选项。

希望对您有所帮助...!!!

关于hadoop - Hive 传递属性/文本文件以读取 -hiveconf 中的多个变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26402682/

相关文章:

csv - 如何将csv文件加载到配置单元中

java - 如何终止(或杀死)Java 中的 Hadoop 作业?

azure - HDInsight 服务器本地多节点 |不在 Azure 上

hadoop - 在接收器上使用水槽将数据记录为所需格式

sql - 在HIVE SQL中替换NULL或空值的函数

sql - 配置单元中 `load data inpath ` 和 `location` 之间的区别?

java - 从 windows eclipse 运行 Mapreduce(yarn) 时出错

hadoop - 通过第三方工具的 Google Dataproc Hive 实例

hadoop - 无法分区由HDFS支持的配置单元表

hadoop - 如何使 hive 返回行更快? (例如,限制10)