Azkaban使用
2021-07-26 本文已影响0人
Jorvi
- 1. 创建 Project
- 2. Upload Zip包
Zip包中保存的是 ***.job 文件,每个job文件代表 Project 内的一个Flow,各Flow间可利用 dependencies
配置依赖关系,例如:
-- start.job
type=noop
注:noop表示一个空操作,啥也不干
-- merge_1.job
type=command
command=${SPARK_HOME}/bin/spark-submit --class ***.tools.MergeFileTool --driver-memory 1g --executor-memory 1g --num-executors 1 --executor-cores 1 --master yarn --files /home/tools/merge_file_tool.properties /home/tools/tools-1.0-SNAPSHOT-jar-with-dependencies.jar ${id} ${new("org.joda.time.DateTime").minusDays(1).toString("yyyy-MM-dd")}
dependencies=start
-- merge_2.job
type=command
command=${SPARK_HOME}/bin/spark-submit --class ***.tools.MergeFileTool --driver-memory 1g --executor-memory 1g --num-executors 1 --executor-cores 1 --master yarn --files /home/tools/merge_file_tool.properties /home/tools/tools-1.0-SNAPSHOT-jar-with-dependencies.jar ${id} ${new("org.joda.time.DateTime").minusDays(1).toString("yyyy-MM-dd")}
dependencies=start
注:
1. ${id}
这种方式可用于传参,在 Flow Parameters 内配置即可
2. ${new("org.joda.time.DateTime").minusDays(1).toString("yyyy-MM-dd")}
这种方式可用于获取执行时间前一天的日期
-- end.job
type=noop
dependencies=merge_1,merge_2
注:多个依赖可通过逗号分隔
注意:job编写在 Linux 环境编写,再利用 zip -qr merge_file_tool.zip merge_file_tool/
打包,windows环境下编写的包可能报错无法上传。
- 3.
Run Job
立即执行,Execute Flow
配置定时调度,都可配置 Flow Parameters 传参