全部产品
云市场

RDS 同步到云搜

更新时间:2020-06-02 10:43:55

本文介绍如何使用数据同步服务快速配置 RDS 到云搜(ZSearch)的数据实时同步,以进行业务的实时搜索。

支持功能

  • 支持 RDS 数据表到 ZSearch 的实时数据同步
  • 任务创建成功后支持修改同步对象

支持的 SQL 操作类型

RDS > 云搜 实时同步支持以下 SQL 操作类型:

  • Insert
  • Delete
  • Update

数据同步服务暂不支持 RDS 中表结构变更(DDL)到 云搜 的自动同步。同步过程中,如果 RDS 中某个表进行了 DDL 操作,数据同步服务会跳过这个 DDL,此后同步到这个表的相关 DML 操作时,会出现同步失败。此时,需要重新修改任务,再重启即可。

前置条件

请确保您已经提前购买了 RDS 源端数据库,以及目的端数据存储,即云搜 ZSearch。

操作步骤

新增数据源

  1. 在数据同步服务控制台总览页面,点击左侧菜单栏的数据源管理
  2. 数据源管理 页面,点击 新建数据源 选择要新建的数据源类型,此处以 新建 RDS 数据源 为例。
  3. 进入新增数据源页面,输入以下信息:
    • 数据源名称:要创建的数据源名称,建议使用有业务意义的名称。
    • 数据源描述:选填,数据源作用等描述。
    • RDS 实例 ID:可前往 RDS 控制台 获取。
    • RDS 实例端口:RDS实例内网端口。
    • vpcId:可前往 RDS 控制台 ,获取 RDS 实例所在的 VPC 的 ID。
    • 用户名:RDS 实例所对应的用户名。
    • 密码:RDS 实例所对应的密码。
      新增数据源
  4. 对于 RDS 数据源,进行连通性测试之前,需要将 IP 地址 100.104.143.192/26 添加到 RDS 实例白名单中。
    1. 登录 RDS 控制台
    2. 点击目标实例的实例 ID,进入基本信息页面,点击 设置白名单
      设置白名单
    3. 在白名单设置页面中,点击 +添加白名单分组
    4. 新弹出窗口中,将 IP 地址 100.104.143.192/26 填入 站内白名单 框内。
    5. 点击 确定,新白名单将在 1 分钟内生效。
      站内白名单
  5. 新白名单生效后,返回数据同步服务控制台,点击 开始测试
  6. 测试成功后,状态显示 已连通,点击 提交

关于如何新增云搜(ZSearch)数据源,参见 新增数据源 > 新增 ZSearch 数据源

创建同步任务

  1. 在数据同步服务总览页面,点击 创建同步任务 步骤的 立即创建 按钮。
  2. 根据需要选择同步场景:
    • RDS 数据源同步到分布式搜索服务:即 RDS > 云搜 的实时同步,亚秒级实时同步,满足业务数据实时搜索诉求。
    • OceanBase 数据源同步到大数据计算服务:即 OceanBase > MaxCompute(原 ODPS)的实时同步,实时捕捉同步数据变化,满足大数据分析需求。
      选择场景
  3. 设置和校验任务参数。以 RDS 数据源同步到分布式搜索服务 场景为例,需配置以下任务参数:
    设置和校验参数
    1. 任务名称:包含字母、数字及下划线,并且以字母开头。任务名称有唯一性要求,建议使用有业务意义的名称。
    2. 填写 数据来源信息
      • 数据源:选择 RDS 数据源。
      • 用户名、密码:输入用户名密码后,点击 查询 获取数据库和数据表。
      • 数据库:选择 RDS 数据源实例下需要同步的数据库。
      • 数据表:选择数据库中的一张表。
    3. 填写 数据去向信息
      • 数据源:选择之前新增的云搜数据源。
      • 索引名称:默认选择为 与源库表名相同 来创建索引;也支持以自定义的方式创建索引。

        说明:如果填写的索引名称在云搜应用中已存在,数据同步服务在同步过程中会覆盖目标端索引及其存储的数据。因此,索引名称配置前需仔细确认。

    4. 确认源端目的端字段信息:确认源端字段信息,并且勾选目的端主键,被勾选的字段将作为云搜的文档 ID。
  4. 点击 提交,完成任务配置。

校验数据更新

任务配置完成后,数据源端一旦有数据更新,任务即会运行。此时,您可以前往 任务详情页目的端数据源控制台 校验数据更新。

任务详情页

数据同步任务 页面,点击任务卡片中的任务名称,进入任务详情页,即可查看以下信息:

  • 上游数据抓取延迟:数据同步服务抓取数据写入存储的时间与数据实际写入至源数据库的时间差。
  • 下游数据写入延迟:同步到目标实例的最新数据在源数据库执行的时间戳与源实例当前时间戳的差值。

任务详情页

目地端数据源控制台

当数据源表有数据更新(insert、update、delete)后,可进入目的端数据源控制台查询相关数据变化。如果查询结果与源端数据变化一致,则说明数据同步任务创建并运行成功。

在 RDS 同步至云搜的场景下,当源端 RDS 表中有新数据写入时,您可前往云搜控制台查看对应的文档数,如下图所示。如果文档数相应增加,说明此同步任务运行成功。

ZSearch 文档数

相关链接