我在hive_queries.hql中有多个配置单元查询。我想保留一个日志来跟踪各个查询的退出状态。如果可能的话,我想更改单个查询以获取数据,例如我想更改查询
"select * from ABC"
到
"load data local inpath '<path>/<folder_name>' select * from ABC"
答案 0 :(得分:1)
我想保留日志跟踪单个查询的退出状态
据我所知,没有标准方法可以跟踪通过.hql
文件运行的各个查询的退出状态。你可以做什么:
_SUCCESS
文件(如果是外部表格或使用INSERT OVERWRITE
)以确定是否失败。我想更改单个查询以获取I等数据 想要将查询“select * from ABC”更改为“加载本地数据” inpath'/'select * from ABC“
有一个技巧可以使用hiveconf
来实现这一目标。
编写您的查询,如
`${hiveconf:start_tag}`
select * from ABC
通过这种方式,基本上您在脚本中创建一个占位符,可以在运行时替换它。 E.g。
如果您执行脚本
hive -hiveconf start_tag= -f my_script.hql
然后您的查询将以
执行select * from ABC
如果您执行脚本
hive -hiveconf start_tag="load data local inpath '<path>/<folder_name>'" -f my_script.hql
然后您的查询将以
执行load data local inpath '<path>/<folder_name>'
select * from ABC