前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >dolphinscheduler的switch组件

dolphinscheduler的switch组件

作者头像
chimchim
发布2023-10-17 08:59:39
5860
发布2023-10-17 08:59:39
举报

一、背景

Apache DolphinScheduler 是一个分布式易扩展的可视化DAG工作流任务调度开源系统。

switch组件官方文档

https://dolphinscheduler.apache.org/zh-cn/docs/2.0.6/user_doc/guide/task/switch.html

Switch简介 

Switch 是一个条件判断节点,依据全局变量的值和用户所编写的表达式判断结果执行对应分支。 注意使用 javax.script.ScriptEngine.eval 执行表达式。

创建任务

点击项目管理 -> 项目名称 -> 工作流定义,点击"创建工作流"按钮,进入 DAG 编辑页面。 拖动工具栏中的 

 任务节点到画板中即能完成任务创建。 注意 switch 任务创建后,要先配置上下游,才能配置任务分支的参数。

任务参数

  • 节点名称:一个工作流定义中的节点名称是唯一的。
  • 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
  • 描述信息:描述该节点的功能。
  • 任务优先级:worker 线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。
  • Worker 分组:任务分配给 worker 组的机器机执行,选择 Default,会随机选择一台 worker 机执行。
  • 环境名称:安全中心中配置的环境,不配置则不使用。
  • 任务组名称:资源中心中配置的任务组,不配置则不使用。
  • 失败重试次数:任务失败重新提交的次数,支持下拉和手填。
  • 失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。
  • 延时执行时间:任务延迟执行的时间。
  • 超时告警:勾选超时告警、超时失败,当任务超过"超时时长"后,会发送告警邮件并且任务执行失败。
  • 条件:可以为 switch 任务配置多个条件,当条件满足时,就会执行指定的分支,可以配置多个不同的条件来满足不同的业务,使用字符串判断时需要使用""。
  • 分支流转:默认的流转内容,当条件中的内容为全部不符合要求时,则运行分支流转中指定的分支。

二、实操DEMO

SQL任务switch判断DEMO

第一步:新建SQL任务,配置好参数

字段名称和输出参数需要保持一致,涉及到别名通过as匹配;

参数要设置成OUT类型。

第二步: 定义SWITCH节点

需要先配置前置任务;

才能在条件中引用上游传递过来的参数值;

配置好跟下游任务的依赖关系,符合条件的分支流转才能选到下游任务。

三、参考资料

DolphinScheduler任务参数附录 

DolphinScheduler任务插件有一些公共参数,我们将这些公共参数列在文档中供您查阅。每种任务都有如下的所有或者部分默认参数:

默认任务参数

任务参数

描述

任务名称

任务的名称,同一个工作流定义中的节点名称不能重复。

运行标志

标识这个节点是否需要调度执行,如果不需要执行,可以打开禁止执行开关。

描述

当前节点的功能描述。

任务优先级

worker线程数不足时,根据优先级从高到低依次执行任务,优先级一样时根据先到先得原则执行。

Worker分组

设置分组后,任务会被分配给worker组的机器机执行。若选择Default,则会随机选择一个worker执行。

任务组名称

任务资源组,未配置则不生效。

组内优先级

一个任务组内此任务的优先级。

环境名称

配置任务执行的环境。

失败重试次数

任务失败重新提交的次数,可以在下拉菜单中选择或者手动填充。

失败重试间隔

任务失败重新提交任务的时间间隔,可以在下拉菜单中选择或者手动填充。

CPU 配额

为执行的任务分配指定的CPU时间配额,单位为百分比,默认-1代表不限制,例如1个核心的CPU满载是100%,16个核心的是1600%。 task.resource.limit.state

最大内存

为执行的任务分配指定的内存大小,超过会触发OOM被Kill同时不会进行自动重试,单位MB,默认-1代表不限制。该功能由 task.resource.limit.state 控制。

超时告警

设置超时告警、超时失败。当任务超过"超时时长"后,会发送告警邮件并且任务执行失败。该功能由 task.resource.limit.state 控制。

资源

任务执行时所需资源文件

前置任务

设置当前任务的前置(上游)任务。

延时执行时间

任务延迟执行的时间,以分为单位

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • switch组件官方文档
  • Switch简介 
  • 创建任务
  • 任务参数
  • 二、实操DEMO
    • SQL任务switch判断DEMO
      • 第一步:新建SQL任务,配置好参数
      • 第二步: 定义SWITCH节点
  • 三、参考资料
    • 默认任务参数
    相关产品与服务
    项目管理
    CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档