数据开发之补数脚本

本文介绍了一种使用Shell脚本自动化补全Hive中缺失数据的方法。通过设定日期范围,循环执行HQL脚本来更新最近10天的数据。如果数据更新成功,脚本将显示完成信息;否则,将提示更新失败并终止进程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据开发之补数脚本

如果数据少了需要重新跑一段时间的数据怎么办?这个时候就应该用到补数脚本。

#!/bin/bash

#作者:shyming
#创建时间:2021-11-08

#n为天数,执行前n天的数据统计
n=10
today=`date +%Y-%m-%d`

sql="
select '建表';
"

hive -e "${sql}"

#定义方法,便于传参循环跑数

function update_exec(){
hql="
select '处理';
"

hive -e "${hql}"

if [ $? -eq 0 ];then
    echo "数据 $ETL_DATE  更新完成"
else
    echo "数据 $ETL_DATE  更新失败"
	exit 1
fi
}
	

#循环跑数
echo "开始更新近${n}天数据"

while ((n>0))
do
 ETL_DATE=`date -d "${today} -$n days" +%Y-%m-%d`
 update_exec ${ETL_DATE}
 let  n--
done

echo "数据更新完成"

结果展示
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值