小白指南:Apache DolphinScheduler 补数据功能实操演示

补数据是工作流执行的一种特殊模式,让用户可以为过去的时间段批量创建和执行工作流实例。
176215886873466b23c7f6f45544e最近使用 Apache DolphinScheduler 调度任务,不可避免地使用到【补数据】功能,经过不断尝试,终于成功运行了【补数据】功能,以此帖记录。
  • 版本说明:3.1.9

补数据

功能简介


"补数据" 在 Apache DolphinScheduler 中指的是 补数据(Complement Data) 功能,用于补充执行历史时间段内的工作流实例。

补数据

功能概述


补数据是工作流执行的一种特殊模式,让用户可以为过去的时间段批量创建和执行工作流实例。这在以下场景中特别有用:

  • 需要重新处理历史数据
  • 系统故障后需要补充缺失的数据处理
  • 新增数据处理逻辑后需要回填历史数据
  • 定期批量数据处理

补数据

配置参数


在工作流启动界面中,补数据功能包含以下配置选项:

  1. 是否是补数据 (whether_complement_data): 开关选项,启用补数据模式

  2. 调度日期 (schedule_date): 指定需要补数据的时间范围 :

  • 支持日期选择和手动输入两种方式
  • 格式为 yyyy-MM-dd HH:mm:ss,多个日期用逗号分隔
  • 限制最多输入100条日期
  • 执行方式 (mode_of_execution):

    • 串行执行: 按顺序逐个执行补数据任务

    • 并行执行: 同时执行多个补数据任务

  • 并行度 (parallelism): 当选择并行执行时,可以设置自定义并行度来控制同时执行的任务数量

    • 这有助于避免大量补数据任务对服务器造成过大影响
  • 执行顺序 (order_of_execution) :

    • 按日期升序执行: 从最早的日期开始执行

    • 按日期降序执行: 从最近的日期开始执行


      使用

    步骤


    首先是工作流的任务配置,见下图

    1762158873587a4c1f68b95eff9bb

    接着,保存工作流,未设置全局变量。上线工作流。

    最后,运行工作流,运行参数见下图

    176215887403382887b890aed08cf
    1. 选择补数据的日期范围
    2. 【启动参数】为定义任务时设置的参数dt,value为空即可。
    3. 点击【确定】后自动运行

      验证

    结果


    点击【工作流实例】,查看运行结果。

    17621588754093a780c99e2267913

    点击第1个实例进入,查看日志

    1762158876643b619b3080269226e

    结果显示,SQL 运行结果为补数据选择的日期,补数据功能正常可用。

    Notes

    补数据功能是 Apache DolphinScheduler 工作流管理中的重要特性,通过灵活的配置选项(执行方式、并行度、执行顺序等)来满足不同的数据补充需求。在使用时需要注意合理设置并行度,避免对系统资源造成过大压力。

    176215887759261239481d8ed2552
    1762158878144930f8814bdeb3f43
    176215887759261239481d8ed2552
    1762158879090496dea826c2f1562



    用户案例



    天翼云Zoom网易邮箱 
    每日互动 惠生工程  作业帮 
    博世智驾 蔚来汽车 长城汽车
    集度长安汽车思科网讯
    食行生鲜联通医疗联想
    新网银行唯品富邦消费金融 
    自如有赞伊利当贝大数据
    珍岛集团传智教育Bigo
    YY直播  拈花云科太美医疗
    Cisco Webex兴业证券


    1762158879090496dea826c2f1562



    迁移实战



    Azkaban   Ooize(当贝迁移案例)   
    airflow (有赞迁移案例) 
    Air2phin(迁移工具)
    Airflow迁移实践

    1762158879090496dea826c2f1562



    发版消息




    Apache DolphinScheduler 3.2.2版本正式发布!
    Apache DolphinScheduler 3.2.1 版本发布:增强功能与安全性的全面升级
    Apache DolphinScheduler 3.3.0 Alpha发布,功能增强与性能优化大升级!


    1762158879090496dea826c2f1562



    加入社区



    关注社区的方式有很多:

    • GitHub: https://github.com/apache/dolphinscheduler
    • 官网:https://dolphinscheduler.apache.org/en-us
    • 订阅开发者邮件:dev@dolphinscheduler@apache.org(向邮箱发送任意内容,收到邮件后回复同意订阅即可)
    • X.com:@DolphinSchedule
    • YouTube:https://www.youtube.com/@apachedolphinscheduler
    • Slack:https://join.slack.com/t/asf-dolphinscheduler/shared_invite/zt-1cmrxsio1-nJHxRJa44jfkrNL_Nsy9Qg

    同样地,参与Apache DolphinScheduler 有非常多的参与贡献的方式,主要分为代码方式和非代码方式两种。

    非代码方式包括:

    完善文档、翻译文档;翻译技术性、实践性文章;投稿实践性、原理性文章;成为布道师;社区管理、答疑;会议分享;测试反馈;用户反馈等。

    ‍代码方式包括:

    查找Bug;编写修复代码;开发新功能;提交代码贡献;参与代码审查等。

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

    社区汇总了以下适合新手的问题列表https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3A%22first+time+contributor%22

    优先级问题列表https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3Apriority%3Ahigh

    如何参与贡献链接https://dolphinscheduler.apache.org/zh-cn/docs/3.2.2/%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97_menu/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E_menu

    如果你❤️小海豚,就来为我点亮Star吧!

    https://github.com/apache/dolphinscheduler

    176215888617491bb9eaa4af79005


    1762158888902464bafe7d1de4080

    你的好友秀秀子拍了拍你

    并请你帮她点一下“分享”