暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Apache DolphinScheduler 技术详解进阶(资源中心)

海豚调度 2024-02-02
517

本文介绍了Apache DolphinScheduler的内置参数及其用于调度的应用,包括基础和衍生参数的使用方法。

此外,文章还详细阐述了如何在 DolphinScheduler 中引用依赖资源,例如使用资源中心管理文件和引用脚本,以 Shell 任务为例进行说明。

内置参数

DolphinScheduler 提供了一些时间相关的系统参数,方便定时调度使用。

1)基础内置参数

变量名参数说明
system.biz.date${system.biz.date}定时时间前一天,格式为 yyyyMMdd
system.biz.curdate${system.biz.curdate}定时时间,格式为 yyyyMMdd
system.datetime${system.datetime}定时时间,格式为 yyyyMMddHHmmss

2)衍生内置参数

可通过衍生内置参数,设置任意格式、任意时间的日期。

(1)自定义日期格式

可以对 [yyyyMMdd], [yyyyMM-dd]。

(2)使用 add_months() 函数

该函数用于加减月份, 第一个入口参数为[yyyyMMdd],表示返回时间的格式 第二个入口参数为月份偏移量,表示加减多少个月。

参数说明
$[add_months(yyyyMMdd,12*N)]后 N 年
$[add_months(yyyyMMdd,-12*N)]前 N 年
$[add_months(yyyyMMdd,N)]后 N 月
$[add_months(yyyyMMdd,-N)]前 N 月

(3)直接加减数字

在自定义格式后直接“+/-”数字,单位为“天”。

参数说明
$[yyyyMMdd+7*N]后 N 周
$[yyyyMMdd-7*N]前 N 周
$[yyyyMMdd+N]后 N 天
$[yyyyMMdd-N]前 N 天
$[HHmmss+N/24]后 N 小时
$[HHmmss-N/24]前 N 小时
$[HHmmss+N/24/60]后 N 分钟
$[HHmmss-N/24/60]前 N 分钟

3)配置示例

若执行的脚本需要一个格式为 yyyy-MM-dd 的前一天日期的参数,进行如下配置即可

${system.biz.date}

日志结果如下

引用依赖资源

有些任务需要引用一些额外的资源,例如 MR、Spark 等任务须引用 jar 包,Shell 任务需要引用其他脚本等。DolphinScheduler 提供了资源中心来对这些资源进行统一管理。资源中心存储系统可选择本地文件系统或者 HDFS 等。资源中心除了提供文件资源管理功能,还提供了 Hive 自定义函数管理的功能。

下面以 Shell 任务为例,演示如何引用资源中心的其他脚本。

1)点击资源中心,点击创建文件

2)创建文件

3)确保HDFS可以查询到 hello.sh 脚本

4)编辑Node-A中的内容,保存并执行

5)查看任务实例中Node-A结果

Apache DolphinScheduler 作为一个高效的任务调度和管理平台,通过其强大的内置参数和资源中心,为用户提供了灵活的时间调度和资源管理功能。通过掌握这些功能,用户可以更加高效地管理和执行各种计算任务,从而提高整体的工作效率和准确性。

用户实践案例
奇富科技  蜀海供应链 联通数科 拈花云科
蔚来汽车 长城汽车 集度 长安汽车
思科网讯 生鲜电商 联通医疗 联想
新网银行 消费金融  腾讯音乐 自如
有赞 伊利 当贝大数据
联想 传智教育 Bigo
通信行业  作业帮


迁移实践
Azkaban   Ooize   
Airflow (有赞案例) Air2phin(迁移工具)
Airflow迁移实践
Apache DolphinScheduler 3.0.0 升级到 3.1.8 教程


新手入门
选择Apache DolphinScheduler的10个理由
Apache DolphinScheduler 3.1.8 保姆级教程【安装、介绍、项目运用、邮箱预警设置】轻松拿捏!
Apache DolphinScheduler 如何实现自动化打包+单机/集群部署?
Apache DolphinScheduler-3.1.3 版本安装部署详细教程
Apache DolphinScheduler 在大数据环境中的应用与调优

参与Apache DolphinScheduler 社区有非常多的参与贡献的方式,包括:


贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度。

社区汇总了以下适合新手的问题列表:https://github.com/apache/dolphinscheduler/issues/5689

非新手问题列表:https://github.com/apache/dolphinscheduler/issues?
q=is%3Aopen+is%3Aissue+label%3A%22volunteer+wanted%22

如何参与贡献链接:https://dolphinscheduler.apache.org/zh-cn/community/development/contribute.html

来吧,DolphinScheduler开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的。

文章转载自海豚调度,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论