本文为您介绍如何通过DataWorks数据集成实时同步MySQL Binlog的数据至Hologres。

前提条件

说明 跨地域是否可以同步数据,详情请参见数据源测试连通性

背景信息

Hologres是实时交互式分析产品,与大数据生态无缝打通,深度集成智能研发平台DataWorks,支持高并发和低延时地查询分析数据。

MySQL Binlog输入基于Binlog的实时订阅功能实时读取MySQL数据库的表数据。您可以使用DataWorks数据集成实时同步MySQL Binlog的数据至Hologres,详细原理请参见Hologres Writer

MySQL Binlog输入支持V5.1、V5.5、V5.6、V5.7和V8.0版本。

操作步骤

  1. 准备MySQL数据源。
    您需要在RDS中创建一张表并导入数据,详情请参见快速入门
    本次试验选用已创建的RDS表。
    示例建表SQL语句如下。
    CREATE TABLE `holo_test` (
      `id` int NULL, 
      `name` text NULL, 
      `r_time` timestamp NULL, 
      `address` text NULL, 
      `salary` double NULL ) 
      ENGINE=InnoDB DEFAULT CHARACTER SET=utf8;
  2. 配置MySQL数据源。
    1. 登录DataWorks控制台,单击左侧导航栏的工作空间列表
    2. 单击所选工作空间名称操作列的进入数据集成
    3. 单击数据集成页面的数据源管理
    4. 单击新增数据源
    5. 选择实时类别中的MySQL Binlog,并配置新增MySQL Binlog数据源弹框的参数。
      new
      参数名称 描述
      数据源类型 选择阿里云实例模式
      数据源名称 数据源名称为字母、数字和下划线的组合,且必须以字母开头。
      数据源描述 数据源的描述说明,不得超过80个字符。
      适用环境 包括开发生产两种环境。
      说明 仅标准模式的工作空间会显示该配置。
      地区 选择数据源所在的地域。
      RDS实例ID 进入RDS管理控制台的,获取实例ID
      RDS实例主账号ID 登录DataWorks控制台,鼠标悬停至顶部菜单栏右侧的用户头像,单击安全设置,获取账号ID。
      数据库名 提供数据源的数据库名称。
      用户名 MySQL数据库的用户名称。
      密码 MySQL数据库的用户密码。
  3. 配置Hologres数据源。
    成功配置MySQL数据源后,您需要在数据集成页面配置Hologres数据源。
    1. 单击数据源管理
    2. 单击新增数据源
    3. 选择Hologres,并配置新增Hologres数据源弹框的参数。新建hologres数据源
      参数名称 描述
      数据源类型 目前仅支持阿里云实例模式
      数据源名称 数据源名称为字母、数字和下划线的组合,且必须以字母开头。
      数据源描述 数据源的描述说明,不得超过80个字符。
      适用环境 包括开发生产两种环境。
      说明 仅标准模式的工作空间会显示该配置。
      实例ID 需要同步数据的Hologres实例ID。进入Hologres管理控制台,获取实例ID。
      数据库名 提供数据源的数据库名称。
      AccessKey ID 您可以单击AccessKey 管理,获取AccessKey ID。
      AccessKey Secret 您可以单击AccessKey 管理,获取AccessKey Secret。
  4. 配置同步任务。
    成功配置数据源后,您需要配置实时同步任务,同步MySQL的数据至Hologres。具体步骤如下:
    1. 新建实时同步节点。
      1. 数据集成页面单击新建同步任务
      2. 配置新建节点弹框的节点类型节点名称目标文件夹参数。
      3. 单击提交
    2. 配置输入
      1. 进入实时同步节点的编辑页面,输入选择MySQL Binlog
      2. 单击MySQL Binlog_1,配置节点配置对话框中的各项参数。输入
        参数 描述
        数据源 选择已经配置好的MySQL Binlog数据源。
        选择当前数据源下需要同步数据的表名称。您可以单击右侧的数据预览进行确认。
        输出字段 选择需要同步的字段。
    3. 配置输出
      1. 输出选择Hologres
      2. 单击Hologres_1,配置节点配置对话框中的各项参数。输出
        参数 描述
        数据源 选择已经配置好的Hologres数据源。
        选择Hologres用于接收数据的表。

        您可以单击右侧的一键建表新建数据表,也可以单击数据预览进行确认。

        作业类型 包括重放插入两种类型:
        • 重放:表示镜像功能,即源端执行一次插入、更新或删除操作,Hologres会执行相应的操作。
        • 插入:表示将Hologres作为流存储,通过插入操作保存源端同步的数据。
        写入冲突策略 包括覆盖忽略两种类型:
        • 覆盖:使用源端同步过来的新数据覆盖已有的数据。
        • 忽略:忽略源端同步过来的新数据,保留已有的数据。
        字段映射 单击字段映射,设置源端和目标端字段的映射。同步任务会根据字段的映射关系同步数据。
    4. 配置基本配置
      成功配置输入输出后,单击右侧导航栏的基本配置,配置任务的资源组
      说明 实时同步任务仅支持在独享数据集成资源上运行。
      基本配置
    5. 提交任务。
      1. 成功填写任务后,单击工具栏中的提交图标。
      2. 提交对话框,选中需要提交的节点和忽略输入输出不一致的告警,输入备注
      3. 单击提交

        如果您使用的是标准模式的工作空间,提交成功后,请单击右上角的发布。具体操作请参见发布管理

    6. 启动任务。
      1. 提交或发布节点成功后,单击右上角的运维
      2. 运维中心的左侧导航栏,单击实时任务运维 > 实时同步任务
      3. 实时同步任务页面,单击相应任务名称后的启动,启动任务。

        您可以根据需求配置重置位点,为业务设定同步数据的时间。

        提交
  5. Hologres查询数据。
    启动任务后,您可以在Holostudio中实时查询数据。示例查询语句如下。
    SELECT COUNT (*)FROM public.holo_test_2;
    结果

实时同步任务支持的数据源

DataWorks支持实时同步多种异构数据源,详情请参见实时同步支持的数据源