数据迁移链路规格说明

本文介绍数据迁移各链路规格的说明及性能测试情况。

注意事项

本文中提供的性能指标仅用于提供参考的测试数据,并不作为产品SLA的评判标准。

使用DTS可实现数据秒级增量迁移到目标实例,但受限于源实例的运行负载、传输网络的带宽、网络延时、目标实例写入性能等多种因素的影响,DTS增量迁移任务会出现延迟增大的情况,无法绝对保证秒级延迟。

名词解释

名词

说明

规格

数据传输为用户提供的不同性能的链路规格,以增量迁移性能为衡量标准。

表数量

该测试模型下表的总数。

记录大小

增量数据迁移时每条记录的大小。

RPS

表示每秒增量迁移至目标表的数据行数,如每秒增量迁移源库5000行数据至目标表,则RPS为5000。

说明
  • 如果一条SQL语句中包含对多行数据的操作,则计为多条数据记录变化;对同一条记录反复增删改则计为多条数据记录变化。

  • 每次COMMIT操作也会被计为一次数据记录变化的次数。

数据迁移规格说明

数据迁移根据迁移链路的迁移性能上限,定义了五种规格:small、medium、large、xlarge、2xlarge,当满足以下条件时,各个规格的迁移性能上限才能达到下表中的性能上限。

  • 源实例的压力要大于等于各规格对应的性能上限。

  • 目标实例的写入性能不是瓶颈,能够支持各规格对应的性能压力。

  • 源实例/目标实例与DTS服务器的网络延迟小于等于2ms。

规格定义

性能上限(RPS)参考

small

2,000。

medium

5,000。

large

6,000。

xlarge

7,000。

2xlarge

11,000。

说明

规格的线上运行性能受网络环境、源实例和目标实例的性能、延迟等因素影响,实际的性能值会有差异,表中性能上限值仅供参考,不在SLA承诺范围内。

测试模型

测试流程:在两个RDS MySQL实例之间创建增量迁移任务,在源RDS MySQL上进行压测,检测增量数据迁移的性能表现。

表 1. 测试环境配置

实例

RDS 实例配置

参考极限性能

源实例

  • 实例规格:rds.mys2.8xlarge

  • 内存:48,000MB

  • 最大连接数:2,000

  • 最大QPS:18,000

  • 最大IOPS:14,000

目标实例

  • 实例规格:rds.mys2.8xlarge

  • 内存:48,000MB

  • 最大连接数:2,000

  • 最大QPS:18,000

  • 最大IOPS:14,000

测试模型:

  • 测试表数量为20。

  • 测试表均有主键。

  • 记录大小为1KB。

  • 每个事务平均包含两条DML操作,一条COMMIT,其中INSERT、UPDATE、DELETE的比例为3:1:2。

测试结果

源实例地区

目标实例地区

实例间网络延迟(毫秒)

规格

RPS

华东1(杭州)

华东1(杭州)

0.26

small

2,566

华东1(杭州)

华东1(杭州)

0.26

medium

4,726

华东1(杭州)

华东1(杭州)

0.26

large

6,378

华东1(杭州)

华北1(青岛)

26

small

2,469

华东1(杭州)

华北1(青岛)

26

medium

4,856

华东1(杭州)

华北1(青岛)

26

large

5,439

华东1(杭州)

华北2(北京)

26

small

2,533

华东1(杭州)

华北2(北京)

26

medium

5,038

华东1(杭州)

华北2(北京)

26

large

6,829

华东1(杭州)

美国西部 1(硅谷)

175

small

1,753

华东1(杭州)

美国西部 1(硅谷)

175

medium

2,837

华东1(杭州)

美国西部 1(硅谷)

175

large

3,884

亚太东南 1(新加坡)

美国西部 1(硅谷)

198

small

1,104

亚太东南 1(新加坡)

美国西部 1(硅谷)

198

medium

1,724

亚太东南 1(新加坡)

美国西部 1(硅谷)

198

large

2,256

说明

上述测试模型的数据是各种数据迁移链路规格的极限性能,如果数据迁移的表没有主键、网络延迟大、存在更新热点或者源实例与目标实例存在性能瓶颈时,无法达到上表中的增量迁移性能。