等待hive表某个分区有数据再执行任务

有时上游任务不好串到同一个DAG(比如azkaban任务)中,这时需要轮询指定分区是否有数据,如果有则执行下一个任务。这时可以利用"hadoop fs -test"命令,shell脚本如下

flag=1
echo "init flag:${flag}"
while (( flag == 1 ))
do
    hadoop fs -test -s /user/antifraud/hive/warehouse/af_pro/ql_user_range/ymd=${dt_1day}/000000_0
    flag=$?
    echo "flag:${flag}"
    sleep 5m
done

echo "run"
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容