• Apache DolphinScheduler的工作流传参


    1. 本地参数

    本地参数:作用于工作流的当前任务节点,在任务定义页面进行配置。如下所示,其中IN表示本地参数

    本地参数

    2. 全局参数

    全局参数:作用于工作流的所有任务节点有效。在保存工作流的时候进行设置

    全局参数

    3. 上下游参数传递

    目前支持的任务类型有:Shell、SQL、Procedure。本文以Shell进行讲解

    上游进行参数传递,如下所示。通过echo '${setValue(key=value)}'进行key和value的设置,再通过OUT的方式将key传递到下游

    上游进行参数传递
    下游直接进行参数的获取即可,如下所示

    下游获取参数

    4. 参数的优先级

    当参数名相同时,参数的优先级从高到低为:本地参数 > 上游任务传递的参数 > 全局参数

    当多个上游传递的参数名称相同时:

    • 下游节点会优先使用值为非空的参数
    • 如果有多个值为非空的参数,则优先选择完成早的上游任务对应的参数

    5. 内置参数

    基础内置参数

    变量名声明方式含义
    system.biz.date${system.biz.date}日常调度实例定时的定时时间前一天,格式为yyyyMMdd
    system.biz.curdate${system.biz.curdate}日常调度实例定时的定时时间,格式为yyyyMMdd
    system.datetime${system.datetime}日常调度实例定时的定时时间,格式为yyyyMMddHHmmss

    衍生内置参数

    • 支持代码中自定义变量名,声明方式:${变量名}
    • $[yyyyMMddHHmmss]是可以任意分解组合的,比如:$[yyyyMMdd]$[HHmmss]$[yyyy-MM-dd]

    还可以通过以下两种方式:

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

      • 后N年:$[add_months(yyyyMMdd,12*N)]
      • 前N年:$[add_months(yyyyMMdd,-12*N)]
      • 后N月:$[add_months(yyyyMMdd,N)]
      • 前N月:$[add_months(yyyyMMdd,-N)]
    • 在自定义格式后直接“+/-”数字,单位为天

      • 后N周:$[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]

    使用示例如下

    使用示例

  • 相关阅读:
    23062QTday5
    TCP 三次握手的原因是什么?
    【LIN总线测试】——LIN主节点调度表测试
    10个Pandas数据查询案例
    205.同构字符串
    精选20个爆火的Python实战项目(含源码),直接拿走不谢
    厚积薄发!安全狗再次获得科技成果转化认证!
    【Prism系列】Module实现程序的插件化
    Solidity 小白教程:18. Import
    The ultimate UI kit and design system for Figma 组件库下载
  • 原文地址:https://blog.csdn.net/yy8623977/article/details/126244549