数仓每天都会有定时跑的任务,都是要依赖脚本和SQL文件,现将hive执行脚本执行的2种方式给大家整理一下
1,首先是通过hive -e模式进行调度执行,这个非常严格,不能出现一点问题,脚本内容如下,source的意思是导入对应的模块内容
#!/bin/bash
source $(dirname $(readlink -f "test.sh"))/init.sh
m="select * from ${TEST}.student where dt>='2022-10-25'"
echo "$m"
/root/data/apache-hive/bin/hive -e "$m"
2,通过执行SQL文件,可以减少代码的冗余,保持简洁,文件格式如下:
#!/bin/bash
start="/root/data/apache-hive/bin/hive "
stg="--hivevar STG=stg "
ods="--hivevar ODS_DB=ods "
ads="--hivevar ADS_DB=ads "
dwd="--hivevar DWD_DB=dwd "
dw&#

本文介绍了两种在Hive中执行SQL的方式,包括使用`hive -e`模式和通过SQL文件执行。在`hive -e`模式中,通过shell脚本动态设置SQL语句。而在执行SQL文件时,可以通过变量传入参数,例如日期等,使得脚本更简洁。示例中展示了如何在脚本和SQL文件中使用这些动态参数。
最低0.47元/天 解锁文章
3102

被折叠的 条评论
为什么被折叠?



