【项目实战】Azkaban 自动化调度

时间:2022-07-25
本文章向大家介绍【项目实战】Azkaban 自动化调度,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

现在整个数据仓库的流程已经打通,并且所有脚本也已经封装完成。但从业务数据库抽取数据,一般选择在夜间进行,而且数据仓库的整个处理流程是有先后关系的,所以需要使用自动化调度工具来进行定时、控制依赖关系。

现使用 Azkaban 作为数据仓库的调度工具。接下模拟新一天的数据生成,并使用 Azkaban 完成整个数据处理过程的自动调度。

测试数据生成

在 Node02,即 MySQL 安装节点中执行 SQL,生成新一天的数据

mysql -uroot -pDBa2020*
use mall;
CALL init_data('2020-06-12',300,200,300,FALSE);

编写 Azkaban Job

因为 Azkaban 可以通过 Web 界面来进行作业调度,所以,Azkaban 的 Job 文件需要在本地计算机中编写。

Azkaban 运行的 Job,包括 import.job、ods.job、dwd.job、dws.job、ads.job、export.job;之后需要使用工具打包成压缩文件。

文件内容如下:

import.job

type=command
do_date=${dt}
command=/home/warehouse/shell/sqoop_import.sh all ${do_date}

ods.job

type=command
do_date=${dt}
dependencies=import
command&#