任务(Task)是工作流中的执行单元。DataBuddy 提供 9 种任务类型,本文档作为 任务配置中心文档:列出所有任务类型,并集中说明跨任务类型共用的配置项(任务名称、上游依赖、参数、监控指标、告警、失败与超时策略)。各任务类型的差异化配置见对应子文档。
任务类型清单
类型 | 适用场景 | 详细文档 |
Notebook 任务 | 引用 Studio Notebook 文件,运行 Python + Spark 代码。 | |
Python File 任务 | 引用 Studio Python 文件,运行单文件 Python 代码。 | |
Ray 任务 | 提交 Ray 作业(zip 包)到 Ray 集群。 | |
SQL 任务 | 引用 Studio SQL 文件,运行 Spark SQL。 | |
离线数据接入任务 | 引用数据接入模块的离线同步任务。 | |
IF ELSE 条件任务 | 按条件分支控制下游执行链路。 | |
For Each 循环任务 | 按数据集循环执行内部任务。 | |
嵌套工作流任务 | 在当前工作流中调用另一个工作流。 | |
质量监控任务 | 引用数据质量任务,执行规则检查。 |
通用配置项
无论选择哪种任务类型,以下配置项的交互与规则一致。各任务类型文档不再重复展开,仅说明本类型独有的字段。
任务名称
项目 | 规则 |
字符集 | 中英文、数字、下划线 _、短横线 - |
长度 | 1–512 字符 |
唯一性 | 同工作流内任务名不可重复 |
校验 | 输入空格自动转下划线;含非法字符或重名时输入框下方红字提示 |
上游依赖任务(多任务场景)
字段 | 说明 | 是否必填 |
上游依赖任务 | 多选下拉,选项为当前工作流内的其他任务。新建任务时自动选中画布上当前选中的任务。 | 否(仅多任务场景显示) |
运行条件(触发规则) | 单选 / 高级模式 | 是 |
运行条件(触发规则)
控制任务在何种上游状态组合下触发。简单模式下拉选项:
选项 | 触发条件 | 上游不满足时下游状态 |
全部成功(默认) | 所有上游均成功 | 上游失败 / 排除运行 |
全部失败 | 所有上游均失败或上游失败 | 排除运行 |
全部完成 | 所有上游到达终态(成功 / 失败 / 上游失败 / 排除运行) | 等待上游 |
全部完成且至少一个成功 | 所有上游完成 + 至少一个成功 | 排除运行 |
全部完成且至少一个失败 | 所有上游完成 + 至少一个失败 | 排除运行 |
全部排除运行 | 所有上游均被排除运行 | 排除运行 |
全部完成且没有失败 | 所有上游完成且无失败 | 上游失败 |
没有失败且至少一个成功 | 无失败且至少一个成功 | 排除运行 |
没有排除运行 | 所有上游都已实际运行(成功 / 失败 / 上游失败) | 排除运行 |
至少一个失败 | 任一上游失败立即触发 | 直到失败前等待上游;全部完成无失败 → 排除运行 |
至少一个成功 | 任一上游成功立即触发 | 直到成功前等待上游;全部完成无成功 → 排除运行 |
至少一个完成 | 任一上游到达终态立即触发 | 等待上游 |
高级模式
支持组合多个
{上游任务} = {状态集合} 表达式,用 任意一个 / 全部 来判断。例如:
task_A = 成功、失败 且 task_B = 成功
上游任务:单选下拉,选项为「上游依赖任务」中已选的任务,每个上游任务在配置中只能出现一次。
运行条件:多选下拉,可选状态为
成功 / 失败 / 上游失败 / 排除运行。条件连接:下拉选择
且 / 或,默认 或。
任务运行状态:排除运行
不满足运行条件的任务进入「排除运行」终态,与「跳过运行」(工作流并发不足整体被跳过)不同:
状态 | 说明 | 终态 |
排除运行(Excluded) | 因不满足任务运行条件,或上游为分支节点且本节点不在分支命中的链路上 | 是 |
跳过运行(Skipped) | 工作流整体因并发限制被跳过 | 是 |
排除运行的错误码为
ExecutionConditionsNotMet,运行详情页提示形如「当前任务运行条件为 ${具体运行条件},不满足运行条件,因此排除运行。」分支节点与运行条件的优先级
当上游存在分支节点(IF ELSE / For Each 等)时,分支判断优先级高于运行条件:
若不命中分支:本任务直接置「排除运行」,不再判断运行条件。
若命中分支:按本任务配置的运行条件继续判断是否触发。
描述
支持任意符号。
字符超过自动停止输入。
选填。
参数
来源 | 行为 |
工作流下发参数 | 工作流参数自动下发到任务,参数名置灰、参数值不可改,需在工作流参数中修改。 |
任务参数 | 在任务上新增参数。当与工作流参数同名时,任务参数优先级更高(任务参数 > 工作流参数)。 |
参数命名、取值规则:
项目 | 规则 |
参数名 | 所有语言、大小写、数字、 _、-,最长 128 字符 |
参数值 | 字符串,最长 2048 字符 |
监控指标
指标 | 用途 | 默认值 |
运行时长 | 任务运行持续时长 | 00h00m00s(不生效) |
等待时长 | 等待上游 / 资源的时长 | 00h00m00s(不生效) |
完成时间 | 完成时间点(仅周期运行) | 空(不生效) |
告警配置
失败与超时策略(重试)
控制任务在执行失败或超时后的处理方式。
参数 | 说明 | 默认值 |
执行失败后重试 | 是否在失败时自动重试。 | 勾选 |
超时后行为 | 直接置失败 / 触发重试 | 直接置失败 |
最大重试次数 | 1–999 | 4 次(共 5 次执行) |
重试间隔 | 数值 + 单位(秒 / 分钟 / 小时),单位最大值 9999。 | 5 分钟 |
提示:保存后,任务配置面板用自然语言展示策略,例如:「执行失败后重试,最多重试次数 4 次,重试之间等待 5 分钟。」
任务保存
操作 | 说明 |
创建任务 | 新建任务时按钮文案。 |
保存任务 | 编辑已存在任务时按钮文案。 |
离开未保存 | 弹窗提示:取消 / 放弃更改 / 保存并继续。 |
任务版本
任务保存时自动生成版本记录,每个任务最多保留 1000 个版本。重跑或运行均使用 最新代码、最新非依赖关系配置;如运行过程中修改了依赖关系,按修改前的依赖关系继续执行。详见 工作流与任务的运维操作 的「重跑与运行逻辑」。
共享数据接入与计算资源
资源类型 | 说明 |
计算资源 |
相关文档
工作流概述
参数配置