全部产品
Search
文档中心

大数据开发治理平台 DataWorks:配置并管理实时同步任务

更新时间:Mar 08, 2024

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

前提条件

  1. 已完成数据源配置。您需要在数据集成同步任务配置前,配置好您需要同步的源端和目标端数据库,以便在同步任务配置过程中,可通过选择数据源名称来控制同步任务的读取和写入数据库。实时同步支持的数据源及其配置详情请参见实时同步支持的数据源

    说明

    数据源相关能力介绍详情请参见:数据源概述

  2. 已购买合适规格的独享数据集成资源组。详情请参见:新增和使用独享数据集成资源组

  3. 独享数据集成资源组与数据源网络已打通。详情请参见:配置资源组与网络连通

使用限制

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

  • 实时同步节点目前仅支持同步PolarDB、Oracle、MySQL数据源至MaxCompute。

  • 实时数据同步任务暂不支持同步没有主键的表。

注意事项

  • 当实时同步至MaxCompute数据源且使用临时AK进行同步时,临时AK超过7天会自动过期,同时,将导致任务运行失败。平台检测到临时AK导致任务失败时会自动重启任务,如果任务配置了该类型的监控报警,您将会收到报警信息。

  • 数据集成使用MaxCompute引擎同步数据通道进行数据上传和下载(同步数据通道SLA详情请参见数据传输服务(上传)场景与工具),请根据MaxCompute引擎同步数据通道SLA评估数据同步业务技术选型。

创建实时同步任务

  1. 创建整库实时同步节点

  2. 配置资源组

  3. 设置同步来源和规则。

    1. 数据来源区域,选择要同步的数据源类型数据源名称等信息。

    2. 选择要同步的表。

      选择同步的源表区域,为您展示所选数据源下所有的表,您可以在源端库表区域选中需要同步的整库全表或部分表,并单击图标图标,将其移动至已选库表

      重要

      如果选中的表没有主键,将无法进行实时同步。

    3. 设置表(库)名的映射规则区域,单击添加规则,选择相应的规则进行添加。

      同步时默认将源端数据表写入目的端同名表中,同时,您可以通过添加映射规则定义最终写入目的端的表名称。支持通过正则表达式转换写入的表名,还支持指定内置变量拼接目标表名。您可以通过该功能实现将多张表数据写入到同一个表中,或统一将源端某固定前缀的表名在写入目标表时更新为其他前缀。配置逻辑请参见:设置来源和同步规则

  4. 设置目标表。

    1. 选择目标MaxCompute(ODPS)数据源写入模式

    2. 时间自动分区设置。

      您可以在时间自动分区设置,单击编辑图标定义目标表分区字段名称。

    3. 刷新源表与目标表映射。

      单击刷新源表和MaxCompute表映射将根据您在步骤三配置的目标表名映射规则来生成目标表,若步骤三未配置映射规则,将默认写入与源表同名的目标表,若目标端不存在该同名表,将默认新建。同时,您可以修改表建立方式、为目标表在源有表字段基础上增加附加字段。

      说明

      目标表名将跟据您在设置表(库)名的映射规则阶段配置的表名转换规则自动转换。

      功能

      描述

      为非主键表选择主键

      由于当前方案不支持无主键表同步,所以您需要单击同步主键列的编辑按钮,为无主键表设置自选主键,即选择表中一个或部分字段作为主键,写入目标端时将会使用该主键进行去重。

      选择表建立方式

      支持自动建表使用已有表

      • 表建立方式选择使用已有表时,MaxComputeBase 表名列显示已有MaxCompute表。您也可以在下拉列表中选择需要使用的表名称。

      • 表建立方式选择自动建表时,显示自动创建的表名称。您可以单击表名称,查看和修改建表语句。

      为目标字段添加附加字段

      单击操作列的编辑附加字段,可以为目标表在源端字段的基础上增加字段并为字段赋值。支持手动赋值常量与变量。

      说明

      仅在表建立方式自动建表时,可以使用此功能。

      数据集成附加字段支持的变量字段如下:

      EXECUTE_TIME:执行时间
      UPDATE_TIME:更新时间
      DB_NAME_SRC:原始数据库名称
      DB_NAME_SRC_TRANSED:转换后数据库名称
      DATASOURCE_NAME_SRC:源端数据源名称
      DATASOURCE_NAME_DEST:目的端数据源名称
      DB_NAME_DEST:目的端数据库名称
      TABLE_NAME_DEST:目的端表名称
      TABLE_NAME_SRC:源端表名称

      编辑目标表结构

      目前自动建表生成的MaxCompute表生命周期默认只有30天,并且可能存在字段类型转换,即若目标端数据库中没有与源端一致的数据类型时,同步任务在自动创建目标表时,将自动为源端字段匹配目标端可写入的字段类型。若您需要修改MaxCompute表生命周期或修改目标表字段类型映射,您可单击MaxCompute 表名列的目标表名进行修改。

      说明

      仅在表建立方式自动建表时,可以使用此功能。

    4. 单击下一步

      如果您前一步中目标数据源使用的表建立方式自动建表,则需要在弹出的自动建表对话框,单击开始建表,批量创建目标MaxCompute表。

  5. DDL消息处理规则设置。

    来源数据源会包含许多DDL操作,数据集成体提供默认处理策略,您也可以根据业务需求,对不同的DDL消息设置同步至目标端的处理策略。不同DDL消息处理策略请参见:DDL消息处理规则

  6. 运行资源设置。

    1. 运行资源设置页面,配置各项参数。

      参数

      描述

      来源端读取支持最大连接数

      读取端的最大连接数,即来源端数据库的JDBC连接数。请根据数据库资源的实际情况合理配置。默认为15

      目标端写入并发数

      数据同步任务内,可以从来源表并行读取或写入数据至目标端的最大线程数。最大并发数为32。请根据您的资源组大小和目标端实际规模合理设置。

    2. 单击完成配置

提交并发布实时同步任务

提交并发布节点任务。

  1. 单击工具栏中的保存图标,保存节点。

  2. 单击工具栏中的提交图标,提交节点任务。

  3. 提交新版本对话框中,输入变更描述

  4. 单击确定

如果您使用的是标准模式的工作空间,任务提交成功后,需要将任务发布至生产环境进行发布。请单击顶部菜单栏左侧的任务发布。具体操作请参见发布任务

后续步骤

任务配置完成后,您可以在运维中心 > 实时任务运维 > 实时同步任务面板启动并管理该任务,详情请参见:实时同步任务运维