数据管理DMS任务编排主要用于编排各类任务并进行调度执行。您可以通过创建一个或多个任务节点组成的任务流,实现复杂的任务调度,提高数据开发效率。

支持的数据库类型

  • 关系型数据库:
    • MySQL:RDS MySQLPolarDB MySQL版MyBase MySQLPolarDB分布式版、其他来源MySQL
    • SQL Server:RDS SQL ServerMyBase SQL Server、其他来源SQL Server
    • PostgreSQL:RDS PostgreSQLPolarDB PostgreSQL版MyBase PostgreSQL、其他来源PostgreSQL
    • OceanBase:OceanBase MySQL模式OceanBase Oracle模式、自建OceanBase
    • PolarDB O引擎
    • Oracle
    • 达梦数据库
    • DB2
  • NoSQL:Lindorm
  • 数据仓库:
    • AnalyticDB MySQL版
    • AnalyticDB PostgreSQL版
    • DLA
    • MaxCompute
    • Hologres
  • 对象存储:OSS

创建任务流流程

4任务编排-流程图

操作步骤

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择集成与开发(DTS) > 数据开发 > 任务编排
  3. 新增任务流。
    1. 单击新增任务流
    2. 新建任务流对话框中,输入任务流名称描述,单击确认
  4. 创建任务流节点。
    1. 添加任务节点。在画布左侧任务类型列表中,拖拽目标任务节点到画布空白区域。更多信息,请参见任务类型介绍
    2. 配置任务节点。单击目标任务节点并选择5设置2或双击目标任务节点,在任务节点配置页面,配置任务节点。
    3. 可选:连接任务节点形成任务流。将鼠标放在上游节点上,单击上游节点右侧出现的空心圆点并拉出连接线,连接至下游节点上。
      以连接单实例SQL赋值节点的下游节点条件分支为例,将鼠标放在单实例SQL赋值节点上,单击单实例SQL赋值节点右侧出现的空心圆点并拉出连接线,连接至条件分支节点上。单实例赋值举例
  5. 在页面下方,配置、查看任务流相关信息。
    1. 单击任务流信息页签,配置基础属性相关信息。
      配置项说明
      任务流名称设置任务流名称。
      描述描述任务的原因或目标,以减少沟通成本。
      责任人责任人可编辑当前任务流、任务相关配置,可试运行任务,并接收任务运行告警信息。
      说明 若您需要变更责任人,在变更后,必须重新发布该任务流才可生效。
      相关人员相关人员具有查看当前任务流、任务相关配置的权限,可试运行任务,但不具有编辑权限。
      说明 DMS的管理员和DBA默认具有相关人员的基本权限,同时额外具备编辑责任人的权限。
      错误处理策略该策略用于运行任务流时,如果出现第一个错误该采取什么样的策略。策略及其说明如下:
      1. 完成运行中的任务:任务流中其他正在运行的节点任务将会保持运行直到结束,其他的节点任务不会被运行,正在运行的任务流运行结束后,任务流将会被标记为运行失败。
      2. 立即停止所有任务:在错误发生后,立即停止运行所有任务流的任务,包括运行中和未运行的任务。
      3. 完成其他不相关任务:假若执行A节点任务出错后,还会继续运行任务流中正在执行的任务,如果这些节点后还有与A有依赖关系的任务也会被调度运行。
      并发控制策略当两个任务流中的一个任务流中已有正在运行的实例时,再次运行时您可以选择如下策略:
      • 跳过:不运行该任务流,直接跳过。
      • 忽略:直接运行该任务流(请确认之前的执行实例不会收到影响)。
      • 并行:并行运行两个任务流。
        • 并行模式1:阻塞任务A直到前一个任务流的任务A已经完成。
        • 并行模式2:阻塞任务 A 直到前一个任务流的任务 A 的子节点已经完成。
      公开任务流选择是否公开该任务流,设置公开后,该任务流可被租户内的所有用户查看,但无编辑和运行任务流的权限(责任人除外),同时,也不会统计到(除责任人以外的用户)执行该任务流的状态数。
    2. 任务流信息页签的调度配置区域,打开开启调度开关,配置调度周期。
      配置项说明
      调度类型选择调度类型:
      • 周期调度:周期性调度任务,例如一周执行一次任务。
      • 调度一次:在指定时间执行一次任务,仅需要配置执行任务的具体时间。
      生效时间选择调度周期生效的区间,默认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表达式不需要手动配置,系统会根据您配置的周期、具体时间自动展现。
    3. 可选:单击操作历史页签,查看该任务流的所有更改操作。
    4. 可选:单击通知配置页签,如果打开通知开关,系统会根据任务流执行结果,给您发送相应的通知消息。
      • 成功通知:任务流执行成功。
      • 失败通知:任务流执行失败。
      • 超时通知:任务流执行超时。
  6. 发布数据流。具体操作,请参见发布或下线任务流

任务类型介绍

分类任务类型描述相关文档
数据集成DTS数据迁移实现跨库、全量、单表或整库的数据迁移,迁移的类型包括数据和结构。配置DTS数据迁移节点
离线数据集成用于数据迁移、数据传输等场景,实现数据源之间的数据同步。配置离线数据集成节点
数据加工单实例SQL将SQL语句发放到指定的关系型数据库上并执行。
说明 如果目标实例已开启无锁结构变更,单实例SQL任务会优先采用无锁结构变更的方式执行,可以有效避免锁表问题。更多信息,请参见开启无锁结构变更
跨库Spark SQL基于Spark引擎,实现大规模跨库数据传输和数据加工,主要针对各类跨库数据同步和数据加工场景。配置跨库Spark SQL节点
DLA Serverless Spark用于配置Serverless Spark作业。创建和执行Spark作业
无锁数据变更采用DMS无锁技术实现数据的Update、Delete等变更。
说明 目标实例需开启无锁结构变更。更多信息,请参见开启无锁结构变更
DML无锁变更概览
DLA Spark SQL通过SQL的方式提交作业到DLA Spark集群。
通用单实例SQL赋值将SELECT语句读取的数据赋值给输出变量,输出变量可以在下一节点中被使用。配置SQL赋值节点
条件分支条件分支节点可用于在任务流中进行条件判断。执行任务流时,如果条件分支节点的条件表达式判断结果为True,执行后续任务,否则不执行后续任务。配置条件分支节点
DLA一键数仓基于DLA一键建仓的功能,将数据库的数据上传到OSS,建立数据仓库。一键建仓
DBS备份通过DBS将数据库的数据备份到DBS提供的OSS中。DBS
脚本代码基于数据库网关的脚本任务可以实现周期性或定时运行脚本。配置脚本代码节点
状态检查表时间列状态检查检查某一时间点后,目标表中是否有新增数据。
Lindorm文件检查用于检查Lindorm HDFS下某个文件是否存在。
SQL状态检查通过SQL语句检查数据状态。例如,统计班级里男生是否超过10人。
稽核任务用于检查数据质量。设置质量规则和调度周期后,自动检查数据质量并生成报告。
任务流依赖检查实现任务流自依赖和跨任务流间依赖,依赖的目标对象可以是某个任务流或某个任务节点。配置任务流依赖检查节点

相关文档