点击蓝字 关注我们
摘要
近日,PyDolphinScheduler 迎来了 4.0.1 版本,基于 4.0.0 版本进行了改造和优化。
PyDolphinScheduler 4.0.1 较大的改动包括:
支持任务缓存功能 #50
更好的 python 依赖,依赖包和函数 #63
workflow 不指定租户,仅指定用户 #54
优化了本地参数的指定方式 #53
修改 SQL 任务支持的 pre 和 post 入参类型 #62
01
重要功能详情
更好的 python 依赖,依赖包和函数
在 4.0.1 之前,用户使用 task 装饰器装饰函数时,不能将函数的依赖同时带入 Python 任务中,只会在 DolphinScheduler 中创建的 Python 任务缺少全局变量 my_name 以及导入的包 form datetime import datetime。在 4.0.1 及之后的版本,提交时会分析被装饰函数的依赖关系,并将他们都放到 Python 任务中,保证任务可以被运行。升级到 4.0.1 后,任务中的全局变量 my_name 以及导入的包 form datetime import datetime 都被导入到 DolphinScheduler Python 任务中。
除此之外,4.0.1 还支持函数依赖的提取,提交到 DolphinScheduler 之后,foo 中依赖的 bar 函数也会被放置到 DolphinScheduler 中的 Python 任务中。自动依赖分析并提取,使得用户不需要额外的操作就可以将已经存在本地的函数在 DolphinScheduler 中运行,用户仅需使用 @task 装饰对应的函数即可。此功能是通过 stmdency 仓库完成的。
Workflow 不指定租户,仅指定用户
在 4.0.1 之前,想要通过 pydolphinscheduler 定义和运行工作流需要对每个工作流指定租户,4.0.1 之后不需要为每个工作流配置租户,PyDolphinScheduler 会根据工作流的用户找到对应的租户并且执行工作流,与之一起删除的还有 PyDolphinScheduler 配置文件 config.yaml 中的 default.workflow.tenant 配置,可以通过 default.workflow.user 中的配置找到对应的租户。
优化了本地参数的指定方式
4.0.1 之前,本地参数的指定方式比较原始,使用的方式相对比较复杂。4.0.1 版本简化了本地参数的指定方式,将原本统一使用 local_params 一个参数的方式改成 input_params 和 output_params 分别指定,更加容易理解,更加 Pythonic。
02
功能改进
feat: 增加任务缓存机制,提高重复性任务的运行速度
feat: post 命令添加到 tox 做一些清理
feat: 添加 stmdency handle @task 装饰器语句依赖
feat: 将 setup.cfg 用于 dist 包
feat: 添加方便的方法来创建 apache 释放资源
03
优化
impv:工作流不需要指定租户
impv:让 local_params 参数的指定更加 pythonic
04
Bugfix
fix: 升级了 flake8 之后使用的问题
fix: sql 任务 pre post 语法增加 Sequence 类型支持
05
文档
修改 release 文档
修改部分描述文档
06
感谢贡献者
jieguangzhou, zhongjiajie
Release Note:
https://github.com/apache/dolphinscheduler-sdk-python/releases/tag/4.0.1
参与贡献
随着国内开源的迅猛崛起,Apache DolphinScheduler 社区迎来蓬勃发展,为了做更好用、易用的调度,真诚欢迎热爱开源的伙伴加入到开源社区中来,为中国开源崛起献上一份自己的力量,让本土开源走向全球。
参与 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开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的。
参与开源可以近距离与各路高手切磋,迅速提升自己的技能,如果您想参与贡献,我们有个贡献者种子孵化群,可以添加社区小助手微信(Leonard-ds) ,手把手教会您( 贡献者不分水平高低,有问必答,关键是有一颗愿意贡献的心 )。
添加社区小助手微信(Leonard-ds)
添加小助手微信时请说明想参与贡献。
来吧,开源社区非常期待您的参与。
< 🐬🐬 >
更多精彩推荐
☞Apache DolphinScheduler GitHub Star 突破 10000!
☞DolphinScheduler×长安汽车 | 千万级数据接入能力智能网联汽车云平台引进核心调度系统
☞去年办了这么多场Meetup都没有你,2023年赶紧安排起来!
☞Apache DolphinScheduler 3.1.4 版本发布,修复一键安装报错问题
☞迁移工具 Air2phin 宣布开源,2 步迁移 Airflow 至 Dolphinscheduler
我知道你在看哟