完成数据源、网络、资源的准备配置后,您可创建实时同步节点,同步数据至Hologres。本文为您介绍如何创建数据实时同步任务,并在创建完成后查看任务运行情况。

使用限制

  • 实时数据同步任务仅支持使用独享数据集成资源组。

  • 实时同步节点目前仅支持同步PolarDB、Oracle、MySQL数据源至Hologres。
  • 实时数据同步任务暂不支持同步没有主键的表。

创建实时同步任务

  1. 登录DataWorks控制台
  2. 在左侧导航栏,单击工作空间列表
  3. 选择工作空间所在地域后,单击相应工作空间后的进入数据开发
  4. 创建业务流程
    如果您已有 业务流程,则可以忽略该步骤。
    1. 鼠标悬停至新建图标,选择业务流程
    2. 新建业务流程对话框,输入业务名称
    3. 单击新建
  5. 创建实时同步节点。
    1. 鼠标悬停至新建图标,选择数据集成 > 实时同步
      您也可以找到目标业务流程,右键单击 数据集成,选择 新建 > 实时同步
    2. 新建节点对话框中,配置各项参数。新建实时同步节点(同步至Hologres)
      参数 描述
      节点类型 默认为实时同步
      同步方式 选择数据库迁至Hologres,用于迁移目标数据库下的部分或所有表至Hologres中。
      节点名称 节点名称必须是大小写字母、中文、数字、下划线(_)以及英文句号(.),且不能超过128个字符。
      目标文件夹 存放实时同步节点的目录。
    3. 单击提交,进入实时同步任务编辑页面。
  6. 选择资源组。
    1. 在实时同步任务编辑页面的右侧导航栏,单击基本配置
    2. 资源组下拉框,选择需要使用的资源组。
      说明

      实时数据同步任务仅支持使用独享数据集成资源组。

      如果您没有可用的独享数据集成资源组,请单击 新建独享资源组创建。详情请参见 独享数据集成资源组
  7. 选择来源数据源并配置同步规则。
    1. 数据来源区域,选择类型数据源
      说明 仅支持选择MySQL、Oracle和PolarDB类型的数据源。
    2. 选择同步的源表区域,选中需要同步的源表,单击图标图标,将其移动至已选源表
      源表
      该区域会为您展示所选数据源下所有的表,您可以选择整库全表或部分表进行同步。
      注意 如果选中的表没有主键,将无法进行实时同步。
    3. 设置表名的映射规则区域,单击添加规则,选择相应的规则进行添加。
      同步规则包括 源表名和目标表名转换规则目标表名规则
      • 源表名和目标表名转换规则:转换表名为目标表名,进行字符串替换。
      • 目标表名规则:支持对转换后的表名添加前缀和后缀。
    4. 单击下一步
  8. 选择目标数据源并配置目标表格式。
    1. 设置目标表页面,选择目标Hologres数据源和该数据源下的Schema,并设置是否开启表名大小写敏感
    2. 单击刷新源表和Hologres表映射,创建需要同步的源表和目标Hologres表的映射关系。
    3. 查看任务的执行进度和表来源。查看任务进度和表来源
      序号 描述
      显示映射关系的创建进度。
      说明 如果同步的表数量较多,会导致执行进度较慢,请耐心等待。
      • 如果来源库有主键,则同步数据时会直接使用该主键进行去重。
      • 如果来源库没有主键,则您需要单击编辑图标,自定义主键,即使用其他非主键的一个或几个字段的联合,代替主键进行同步数据时进行去重判断。
      说明
    4. 单击下一步
      如果您前一步中目标数据源使用的 表建立方式自动建表,则需要在弹出的 自动建表对话框,单击 开始建表,批量创建目标Hologres表。
  9. DDL消息处理规则设置。
    来源数据源会包含许多DDL操作,进行实时同步时,您可以根据业务需求,对不同的DDL消息设置同步至目标端的规则。
    说明 该规则为初次执行实时同步任务时的DDL消息处理规则,后续如果您需要修改规则,则可以进入实时任务的运维配置页面修改,详情请参见本文档的 执行实时同步任务小节。
    1. DDL消息处理规则页签,配置实时同步DDL消息处理策略实时同步DDL处理规则
      不同DDL消息处理策略如下表所示。
      DDL消息类型 处理策略
      新建表 DataWorks收到对应类型的DDL消息时,处理策略如下:
      • 正常处理:将相应消息继续下发给目标数据源,由目标数据源来处理。因为不同目标数据源对DDL消息处理策略可能会不同,因此DataWorks只执行转发操作。例如,新增列类型的DDL消息对于MaxCompute而言是个错误的指令,但对于Hologres而言是新增一列的正常指令。
      • 忽略:直接丢弃该消息,不再向目标数据源发送。
      • 告警:直接丢弃该消息,同时会在实时同步日志中记录告警信息,指明该消息因执行出错被丢弃。
      • 出错:实时同步任务直接显示出错状态并终止运行。
      删除表
      新增列
      删除列
      重命名表
      重命名列
      修改列类型
      清空表
    2. 单击下一步
  10. 运行资源设置。
    1. 运行资源设置页面,配置各项参数。
      参数 描述
      来源端读取支持最大连接数 读取端的最大连接数,即来源端数据库的JDBC连接数。请根据数据库资源的实际情况合理配置。默认为15
      目标端写入并发数 数据同步任务内,可以从来源表并行读取或写入数据至目标端的最大线程数。最大并发数为32。请根据您的资源组大小和目标端实际规模合理设置。
    2. 单击完成配置

提交并发布实时同步任务

提交并发布节点任务。
  1. 单击工具栏中的保存图标,保存节点。
  2. 单击工具栏中的提交图标,提交节点任务。
  3. 提交新版本对话框中,输入变更描述
  4. 单击确认
如果您使用的是标准模式的工作空间,任务提交成功后,需要将任务发布至生产环境进行发布。请单击右上方的 任务发布。具体操作请参见 发布任务

执行实时同步任务

  1. 进入运维页面。
    提交或发布节点成功后,单击节点编辑页面右上方的 运维,进入 实时任务运维 > 实时同步任务页面。
  2. 查看实时同步任务详情。
    实时同步任务页面,单击相应 任务名称,查看运维任务的详细信息。 实时任务运维详情
  3. 执行实时同步任务。
    1. 单击目标实时同步任务操作列的启动
    2. 启动对话框中,配置各项参数。启动实时同步任务
      参数 描述
      是否重置位点 如果选中该参数,请设置下次启动的时间位点。即启动时间点位时区为必选项。
      启动时间点位 选择启动节点任务的日期和时间。
      时区 时区下拉列表中选择执行任务的时区。
      Failover 您可以设置在固定时间内,任务的Failover超过指定次数时,自动结束任务。
      说明 如果您不配置Failover的次数,将根据5分钟Failover超过100次来自动结束任务,避免频繁启动任务占用系统资源。
      脏数据策略
      • 零容忍,不允许:只要同步任务中包含脏数据,则任务自动结束。
      • 不限制:无论同步任务中是否包含脏数据,任务均可正常执行。
      • 有限控制:指定可包含固定数值的脏数据,超出该数值时任务自动结束。
      实时同步DDL消息处理策略 您可以根据需求修改已配置的DDL消息处理策略。详情请参见配置DDL消息处理策略

管理实时同步任务

  • 停止运行中的任务。

    单击相应任务后的停止。在停止对话框中,单击停止

  • 下线非运行状态的任务。

    单击相应任务后的下线。在下线对话框中,单击下线

  • 查看任务的报警信息。

    单击相应任务后的报警设置,在报警设置页面查看报警事件报警规则

  • 为任务新增告警。
    1. 选中需要新增告警的任务,单击实时同步任务页面下方的新增告警
    2. 新建规则对话框中,配置各项参数。新建规则
      参数 描述
      名称 新建规则的名称。
      描述 新建规则的描述信息。
      指标 产生报警的指标项:
      • 任务状态
      • 业务延迟
      • Failover
      • 脏数据
      • DDL错误
      阈值 设置WARNINGCRITICAL的阈值,默认值为5分钟。
      报警间隔 设置报警的时间间隔,默认为5分钟发一次报警。
      WARNING 产生相应报警时,可以选择通过邮件短信电话钉钉发送报警通知。
      CRITICAL
      接收人(非钉钉) 选择报警通知的接收人。
    3. 单击确定
  • 批量修改目标任务中指定类型的所有告警。
    1. 选中需要操作告警的任务,单击实时同步任务页面下方的操作告警
    2. 操作告警对话框中,选则需要修改的操作类型告警指标
    3. 单击确定