数据管理DMS任务编排主要用于编排各类任务并进行调度执行。您可以通过创建一个或多个任务节点组成的任务流,实现复杂的任务调度,提高数据开发效率。
支持的数据库类型
关系型数据库:
MySQL:RDS MySQL、PolarDB MySQL版、MyBase MySQL、PolarDB分布式版、其他来源MySQL
SQL Server:RDS SQL Server、MyBase SQL Server、其他来源SQL Server
PostgreSQL:RDS PostgreSQL、PolarDB PostgreSQL版、MyBase PostgreSQL、其他来源PostgreSQL
OceanBase:OceanBase MySQL模式、OceanBase Oracle模式、自建OceanBase
PolarDB PostgreSQL版(兼容Oracle)
Oracle
达梦数据库
DB2
NoSQL:Lindorm
数据仓库:
AnalyticDB MySQL版
AnalyticDB PostgreSQL版
DLA
MaxCompute
Hologres
对象存储:OSS
创建任务流流程

操作步骤
- 登录数据管理DMS 5.0。
- 在顶部菜单栏中,选择 。
新增任务流。
单击新增任务流。
在新建任务流对话框中,输入任务流名称和描述,单击确认。
创建任务流节点。
添加任务节点。在画布左侧任务类型列表中,拖拽目标任务节点到画布空白区域。更多信息,请参见任务类型介绍。
配置任务节点。单击目标任务节点并选择
或双击目标任务节点,在任务节点配置页面,配置任务节点。
可选:连接任务节点形成任务流。将鼠标放在上游节点上,单击上游节点右侧出现的空心圆点并拉出连接线,连接至下游节点上。
以连接单实例SQL赋值节点的下游节点条件分支为例,将鼠标放在单实例SQL赋值节点上,单击单实例SQL赋值节点右侧出现的空心圆点并拉出连接线,连接至条件分支节点上。
在页面下方,配置、查看任务流相关信息。
单击任务流信息页签,配置基础属性相关信息。
配置项
说明
任务流名称
设置任务流名称。
描述
描述任务的原因或目标,以减少沟通成本。
责任人
责任人可编辑当前任务流、任务相关配置,可试运行任务,并接收任务运行告警信息。
说明若您需要变更责任人,在变更后,必须重新发布该任务流才可生效。
相关人员
相关人员具有查看当前任务流、任务相关配置的权限,可试运行任务,但不具有编辑权限。
说明DMS的管理员和DBA默认具有相关人员的基本权限,同时额外具备编辑责任人的权限。
错误处理策略
该策略用于运行任务流时,如果出现第一个错误该采取什么样的策略。策略及其说明如下:
完成运行中的任务:任务流中其他正在运行的节点任务将会保持运行直到结束,其他的节点任务不会被运行,正在运行的任务流运行结束后,任务流将会被标记为运行失败。
立即停止所有任务:在错误发生后,立即停止运行所有任务流的任务,包括运行中和未运行的任务。
完成其他不相关任务:假若执行A节点任务出错后,还会继续运行任务流中正在执行的任务,如果这些节点后还有与A有依赖关系的任务也会被调度运行。
并发控制策略
当两个任务流中的一个任务流中已有正在运行的实例时,再次运行时您可以选择如下策略:
跳过:不运行该任务流,直接跳过。
忽略:直接运行该任务流(请确认之前的执行实例不会收到影响)。
并行:并行运行两个任务流。
并行模式1:阻塞任务A直到前一个任务流的任务A已经完成。
并行模式2:阻塞任务 A 直到前一个任务流的任务 A 的子节点已经完成。
公开任务流
选择是否公开该任务流,设置公开后,该任务流可被租户内的所有用户查看,但无编辑和运行任务流的权限(责任人除外),同时,也不会统计到(除责任人以外的用户)执行该任务流的状态数。
在任务流信息页签的调度配置区域,打开开启调度开关,配置调度周期。
配置项
说明
调度类型
选择调度类型:
周期调度:周期性调度任务,例如一周执行一次任务。
调度一次:在指定时间执行一次任务,仅需要配置执行任务的具体时间。
生效时间
选择调度周期生效的区间,默认1970-01-01~9999-01-01,表示一直生效。
调度周期
选择调度任务的周期:
小时:按设定的小时执行任务调度,需要配置定时调度。
日:按每日一次的频率执行任务调度,需要配置每日调度的具体时间。
周:以周为周期,每个指定天执行一次任务调度,需要配置指定时间和具体时间。
月:以月为周期,每个指定天执行一次任务调度,需要配置指定时间和具体时间。
定时调度
提供了2种定时调度的方式:
固定间隔时间调度:
开始时间:执行任务的开始时间。
间隔时间:执行任务的间隔时间,单位为小时。
结束时间:执行任务的结束时间。
例如,配置开始时间为00:00、间隔时间为6小时、结束时间为20:59,系统将在0点、6点、12点、18点执行任务。
指定时间调度:选择执行任务的目标时间点。
例如选择和0小时和5小时,系统将在0点和5点执行任务。
指定时间
如果调度周期为周,选择星期几执行任务,支持多选。
如果调度周期为月,选择每月几号执行任务,支持多选。
具体时间
设置执行任务流的具体时间。
例如配置02:55,系统将在指定天的02时55分执行任务。
cron表达式
不需要手动配置,系统会根据您配置的周期、具体时间自动展现。
可选:单击操作历史页签,查看该任务流的所有更改操作。
可选:单击通知配置页签,如果打开通知开关,系统会根据任务流执行结果,给您发送相应的通知消息。
成功通知:任务流执行成功。
失败通知:任务流执行失败。
超时通知:任务流执行超时。
发布数据流。具体操作,请参见发布或下线任务流。
任务类型介绍
分类 | 任务类型 | 描述 | 相关文档 |
数据加工 | 单实例SQL | 将SQL语句发放到指定的关系型数据库上并执行。 说明 如果目标实例已开启无锁结构变更,单实例SQL任务会优先采用无锁结构变更的方式执行,可以有效避免锁表问题。更多信息,请参见开启无锁结构变更。 | 无 |
通用 | 单实例SQL赋值 | 将SELECT语句读取的数据赋值给输出变量,输出变量可以在下一节点中被使用。 | |
条件分支 | 条件分支节点可用于在任务流中进行条件判断。执行任务流时,如果条件分支节点的条件表达式判断结果为True,执行后续任务,否则不执行后续任务。 | ||
EC远程命令 | 基于ECS云助手在远程ECS上执行Shell、PowerShell、Bat命令或脚本代码。 | ||
状态检查 | 表时间列状态检查 | 检查某一时间点后,目标表中是否有新增数据。 | 无 |
稽核任务 | 用于检查数据质量。设置质量规则和调度周期后,自动检查数据质量并生成报告。 | 无 | |
任务流依赖检查 | 实现任务流自依赖和跨任务流间依赖,依赖的目标对象可以是某个任务流或某个任务节点。 |