azkaban定时调度sql脚本初体验

本文介绍如何编写job脚本,以定时执行Hadoop数仓中的SQL任务。首先,通过suhdfs命令执行build.sh脚本来准备环境。然后,定义job文件,明确各SQL脚本间的依赖关系,并设定执行顺序。最后,将job文件打包成.zip上传至Azkaban,设置定时调度,实现自动化执行。

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

需求:公司数仓中的一个项目需要每天定时执行集群中的sql脚本文件,我们需要将它写好成脚本上打包成zip文件传到azkaban中定时执行

我需要把这个项目中的(三个分层)所有loaddata部分对应的sql文件名称写成job文件去定时执行,因为每天基本上是定时跑这三层的几个文件

第一步,编写job脚本

#before job build project
type=command
command=su hdfs -c "/data/apps/warehouse-schema/build.sh"
retries=10  ##失败的job的自动重试的次数
retry.backoff=120000  ##重试的间隔(毫秒)

注意各个文件之间的依赖关系,这步是最重要的,因为各个脚本文件之间的执行有先后顺序,我们需要厘清楚这里面的关系,注意他们彼此之间的依赖。

注意dependicies里面填写的是job文件名,不是.sql文件名。比如a.job文件依赖b.job文件里面的c.sql,a文件的dependicies里写的是b.job而不是c.sql

type=command
dependencies=dwd_tj_farm_inventory
command=su hdfs -c 'hive -f /data/apps/warehouse-schema/tianjin_ods/loaddata/dws/dws_tj_farm_inventory.sql' 

第二部,上传压缩文件

将各个jobs文件打包成.zip压缩包上传,会根据依赖关系生成Execution Flow

第三步,执行

点击execute,执行即可按照图的顺序往下依次执行

左侧的schedule按钮,点击设置定时调度的时间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值