数据传输服务DTS支持RDS到分析型数据库AnalyticDB之间的数据实时同步。通过DTS提供的RDS->AnalyticDB实时同步功能,可以将将企业数据集中分析,实现企业内部各种BI、CRM、实时报表系统等。
本小节介绍如何使用数据传输服务DTS快速创建RDS(MySQL)->AnalyticDB实例之间的实时同步作业,实现RDS增量数据到AnalyticDB的数据实时同步。
支持功能
- 支持同一个阿里云账号下RDS(MySQL)->AnalyticDB实例的数据实时同步。
- 支持不同阿里云账号下的RDS->AnalyticDB实例间的数据实时同步。
支持SQL操作类型
RDS->AnalyticDB实时同步支持的SQL操作类型如下:
Insert
Delete
Update
Alter table(只支持增加列,减少列/修改列名 不支持)
Truncate table
Drop table
目前暂不支持Create Table,如果同步过程中RDS实例中新建表需要同步,那么参考 新增同步对象, 修改这个同步作业,将新建表添加到同步对象中。
配置步骤
下面我们详细介绍下创建任意两个RDS实例之间的同步链路的具体步骤。
1. 购买同步链路
进入数据传输服务控制台,进入数据同步页面,点击控制台右上角“创建同步作业” 开始作业配置。
在链路配置之前需要购买一个同步链路。同步链路目前支持包年包月及按量付费两种付费模式,可以根据需要选择不同的付费模式。
在购买页面需要配置的参数包括:
- 源实例
源实例目前只支持 RDS For MySQL, 所以选择RDS For MySQL即可。
- 源地域
源地域为同步链路源实例所在地域。
- 目标实例
目标实例目前支持 RDS For MySQL、MaxCompute、Datahub 及 分析型数据库AnalyticDB 。这里面选择 分析型数据库AnalyticDB。
- 目标地域
目标地域为同步AnalyticDB数据库所在地域。
- 实例规格
实例规格影响了链路的同步性能,实例规格跟性能之间的对应关系详见 数据同步规格说明。
- 数量
数量为一次性购买的同步链路的数量,如果购买的是按量付费实例,一次最多购买99条链路。
当购买完同步实例,返回数据传输控制台,点击新购链路右侧的“配置同步作业” 开始链路配置。
2. 同步链路连接信息配置
在这一步主要配置:
- 同步作业名称
同步作业名称没有唯一性要求,主要为了更方便识别具体的作业,建议选择一个有业务意义的作业名称,方便后续的链路查找及管理。
- 源实例ID
选择源RDS实例ID时,下拉菜单中只列出对应阿里云账号下的RDS For MySQL实例。
- 目标AnalyticDB 数据库
配置目标AnalyticDB对应的数据库名称
当这些内容配置完成后,可以点击授权白名单并进入下一步 进行RDS白名单添加及AnalyticDB账号权限授权。
3. AnalyticDB 账号授权
在这个步骤需要将AnalyticDB对应数据库的读写权限授权给DTS 同步账号。
4. 授权RDS实例白名单
这个步骤,主要是将数据传输服务器IP添加到同步RDS实例的白名单中。避免因为RDS设置了白名单,数据传输服务器连接不上RDS导致同步作业创建失败。
为了保证同步作业的稳定性,在同步过程中,请勿将这些服务器IP从RDS实例的白名单中删除。
当白名单授权后,点击下一步,进入同步账号创建。
5. 选择同步对象
当AnalyticDB同步账号授权完成后,即进入同步对象的选择步骤。实时同步的同步对象的选择粒度可以支持到表级别,即用户可以选择同步某些库或是同步某几张表。
当配置完同步对象后,进入同步初始化配置。
6. 表结构定义
如果选择了结构初始化,那么需要对每个要同步的表,定义其在AnalyticDB中的表类型,主键,分区列等。AnalyticDB的表定义。AnalyticDB的表定义可以参考 创建和修改表
7. 预检查
当上面所有选项配置完成后,即进入启动之前的预检查。
当同步作业配置完成后,数据传输服务会进行限制预检查,当预检查通过后,可以点击 启动 按钮,启动同步作业。
当同步作业启动之后,即进入同步作业列表。此时刚启动的作业处于同步初始化状态。初始化的时间长度依赖于源实例中同步对象的数据量大小。当初始化完成后同步链路即进入同步中的状态,此时源跟目标实例的同步链路才真正建立完成。