DataWorks支持实时同步数据,本文为您介绍如何创建、编辑、提交和运维实时同步节点。

前提条件

目前实时同步处于公测阶段,支持的地域包括华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华南1(深圳)和西南1(成都)。

创建实时同步节点

  1. 登录DataWorks控制台
  2. 在左侧导航栏,单击工作空间列表
  3. 选择工作空间所在地域后,单击相应工作空间后的进入数据开发
  4. 鼠标悬停至新建图标,单击数据集成 > 实时同步
    您也可以找到相应的业务流程,右键单击数据集成,选择新建 > 实时同步。实时同步支持的数据源请参见实时同步支持的数据源
  5. 新建节点对话框中,配置各项参数。
    新建节点
    参数 描述
    节点类型 默认为实时同步
    同步方式 包括单表(Topic)到单表(Topic)ETL数据库迁至Hologres数据库迁至MaxCompute数据库迁至DataHub
    • 单表(Topic)到单表(Topic)ETL:实时同步单个表至一个或多个表中,支持同步过程中变换数据。
    • 数据库迁至Hologres:迁移一个整库下的所有或部分表至Hologres中,支持Hologres下自动创建目标表。
    • 数据库迁至MaxCompute:迁移一个整库下的所有或部分表至MaxCompute中。
    • 数据库迁至DataHub:迁移一个整库下的所有或部分Topic至DataHub中。
    节点名称 节点名称必须是大小写字母、中文、数字、下划线(_)以及英文句号(.),且不能超过128个字符。
    目标文件夹 存放节点的目录。
  6. 单击提交

编辑实时同步节点

选择不同的同步方式,实时同步节点的编辑页面也不同:
  • 当选择同步方式单表(Topic)到单表(Topic)ETL时,操作如下:
    1. 双击打开实时同步节点的编辑页面,单击右侧的基本配置,从资源组下拉列表中选择需要使用的资源组。实时同步
      序号 描述
      组件区域,包括输入输出转换三大模块。
      节点的图形化编辑区域,您可以拖拽组件至该区域进行编辑。
      属性配置区域,单击组件或右侧的基本配置时,会显示相应的属性配置面板。
      注意 请务必选择资源组,否则提交节点时会报错。实时同步仅支持运行在独享数据集成资源组上,详情请参见独享数据集成资源组
    2. 根据自身需求,从组件区域拖拽相应的组件至节点的编辑区域,并通过连线完成相应的节点关系连接,数据会根据连线从上游同步至下游。
      下图为您展示新建MySQL数据实时同步至MaxCompute的过程。实时同步
    3. 单击相应的节点,在节点配置对话框中,配置各项参数。详情请参见实时同步节点配置
    4. 单击工具栏中的保存图标。
  • 当选择同步方式数据库迁至Hologres时,操作如下:
    1. 双击打开实时同步节点的编辑页面,单击右侧的基本配置,从资源组下拉列表中选择需要使用的资源组。同步至Hologres
      注意 请务必选择资源组,否则提交节点时会报错。实时同步仅支持运行在独享数据集成资源组上,详情请参见独享数据集成资源组
    2. 数据来源区域,选择类型数据源
    3. 选择同步的源表区域,选中需要同步的源表,单击箭头图标,将其移动至已选源表
      该区域会为您展示所选数据源下所有的表,您可以选择整库全表和部分表进行同步。
      注意 如果选中的表没有主键,将无法进行实时同步。
    4. 可选:设置同步规则区域,单击添加规则,选择相应的规则进行添加。
      同步规则包括表名转换规则目标表名规则
      • 表名转换规则:转换表名为目标表名,进行字符串替换。
      • 目标表名规则:支持对转换后的表名添加前缀和后缀。
    5. 单击下一步
    6. 设置目标表页面,选择目标Hologres数据源和该数据源下的Schema
    7. 单击刷新源表和Hologres表映射,创建需要同步的源表和目标Hologres表的映射关系。
    8. 查看任务的执行进度和表来源,单击下一步执行进度
      序号 描述
      显示映射关系的创建进度。
      说明 如果同步的表数量较多,会导致执行进度较慢,请耐心等待。
      包括自动建表使用已有表
      说明 暂不支持同步没有主键的表。但只要选择的表中包括有主键的表,会正常执行流程,没有主键的表会被忽略。
      选择的表建立方式不同,此处显示的Hologres表名也不同:
      • 表建立方式选择自动建表时,单击下一步,会显示自动建表对话框。请单击开始建表,创建成功后,单击完成。您可以单击表名称,查看和修改建表语句。
      • 表建立方式选择使用已有表时,请在下拉列表中选择需要的表。
    9. 运行资源设置页面,配置来源端读取支持最大连接数目标端写入并发数,并单击工具栏中的保存图标。
  • 当选择同步方式数据库迁至MaxCompute时,操作如下:
    1. 双击打开实时同步节点的编辑页面,单击右侧的基本配置,从资源组下拉列表中选择需要使用的资源组。
    2. 数据来源区域,选择类型数据源
    3. 选择同步的源表区域,选中需要同步的源表,单击箭头图标,将其移动至已选源表
      该区域会为您展示所选数据源下所有的表,您可以选择整库全表和部分表进行同步。
      注意 如果选中的表没有主键,将无法进行实时同步。
    4. 可选:设置同步规则区域,单击添加规则,选择相应的规则进行添加。
      同步规则包括表名转换规则目标表名规则
      • 表名转换规则:转换表名为目标表名,进行字符串替换。
      • 目标表名规则:支持对转换后的表名添加前缀和后缀。
    5. 单击下一步
    6. 设置目标表页面,选择目标MaxCompute(ODPS)数据源,单击MaxCompute(ODPS)时间自动分区设置后的编辑图标,在编辑对话框中,修改目标MaxCompute分区的设置(支持天和小时级别的分区)。
    7. 单击刷新源表和MaxCompute(ODPS)表映射,创建需要同步的源表和目标MaxCompute表的映射关系。
    8. 查看任务的执行进度和表来源,单击下一步MaxCompute
      序号 描述
      显示映射关系的创建进度。
      说明 如果同步的表数量较多,会导致执行进度较慢,请耐心等待。
      包括自动建表使用已有表
      说明 暂不支持同步没有主键的表。但只要选择的表中包括有主键的表,会正常执行流程,没有主键的表会被忽略。
      选择的表建立方式不同,此处显示的MaxCompute表名也不同:
      • 表建立方式选择自动建表时,单击下一步,会显示自动建表对话框。请单击开始建表,创建成功后,单击完成。您可以单击表名称,查看和修改建表语句。
      • 表建立方式选择使用已有表时,请在下拉列表中选择需要的表。
    9. 运行资源设置页面,配置来源端读取支持最大连接数目标端写入并发数,并单击工具栏中的保存图标。
  • 当选择同步方式数据库迁至DataHub时,操作如下:
    1. 双击打开实时同步节点的编辑页面,单击右侧的基本配置,从资源组下拉列表中选择需要使用的资源组。
    2. 数据来源区域,选择类型数据源
    3. 选择同步的源表区域,选中需要同步的源表,单击箭头图标,将其移动至已选源表
      该区域会为您展示所选数据源下所有的表,您可以选择整库全表和部分表进行同步。
      注意 如果选中的表没有主键,将无法进行实时同步。
    4. 设置同步规则区域,单击添加规则,选择相应的规则进行添加。

      同步规则包括源表名和Topic转换规则目标Topic规则

    5. 单击下一步
    6. 设置目标表页面,选择目标DataHub数据源,单击刷新源表和DataHub Topic映射,创建需要同步的源表和目标Topic的映射关系。
    7. 查看任务的执行进度和Topic来源,单击下一步查看进度
      序号 描述
      显示映射关系的创建进度。
      说明 如果同步的Topic数量较多,会导致执行进度较慢,请耐心等待。
      包括自动建表使用已有Topic
      选择的Topic建立方式不同,此处显示的DataHub Topic也不同:
      • Topic建立方式选择自动建表时,单击下一步,会显示自动建表对话框。请单击开始建表,创建成功后,单击完成
      • Topic建立方式选择使用已有Topic时,请在下拉列表中选择需要的Topic。
    8. 运行资源设置页面,配置来源端读取支持最大连接数目标端写入并发数,并单击工具栏中的保存图标。

提交实时同步节点

  1. 在实时同步节点的编辑页面,单击工具栏中的提交图标。
  2. 提交新版本对话框中,输入变更描述
  3. 单击确认
    如果您使用的是标准模式的工作空间,提交成功后,请单击右上方的发布。详情请参见发布管理

运维实时同步节点

  1. 提交或发布节点成功后,单击页面右上方的运维,进入实时任务运维 > 实时同步任务页面。
    实时同步
  2. 您可以在实时同步任务页面,单击相应的任务名称,查看详细的运维信息。
    实时同步运维
    您可以在该页面对实时同步节点进行启动停止下线报警设置等操作:
    • 启动非运行状态的任务:
      1. 单击相应任务后的启动
      2. 启动对话框中,配置各项参数。启动
        参数 描述
        是否重置位点 如果选中该参数,请设置下次启动的时间位点。即启动时间点位时区为必选项。
        启动时间点位 选择启动节点的日期和时间。
        时区 时区下拉列表中选择时区。
        任务自动结束
        • 配置脏数据的最大容忍条数。如果您配置为0,表示严格不允许脏数据存在。如果不配置,则代表容忍脏数据。
        • 如果您不配置Failover次数,将根据5分钟Failover 100次来自动结束任务,避免频繁启动占用系统资源。
      3. 单击确认
    • 停止运行中的任务:
      1. 单击相应任务后的停止
      2. 在确认对话框中,单击停止
    • 下线非运行状态的任务:
      1. 单击相应任务后的下线
      2. 在确认对话框中,单击下线
    • 单击相应任务后的报警设置,您可以在该页面查看报警时间报警规则
    • 新增告警:
      1. 选中需要新增告警的任务,单击页面下方的新增告警
      2. 新建规则对话框中,配置各项参数。新建规则
        参数 描述
        名称 新建规则的名称,必填项。
        描述 对新建规则进行简单描述。
        指标 包括任务状态业务延迟Failover脏数据DDL错误
        阈值 设置WARNINGCRITICAL的阈值,默认值为5分钟。
        报警间隔 设置报警的时间间隔,默认值为5分钟内只发一次报警。
        WARNING 包括邮件短信电话钉钉
        CRITICAL
        接收人(非钉钉) 接收人(非钉钉)下拉列表中选择接收人。
      3. 单击确认
    • 操作告警:
      1. 选中需要操作告警的任务,单击页面下方的操作告警
      2. 操作告警对话框中,选中操作类型告警指标

        选中要操作的告警类型后,其对应的所有规则会被批量修改。

      3. 单击确认