影响因素
- 源库的读取吞吐能力
读取吞吐能力越高,迁移速度越快,耗时越少。影响吞吐的因素包括但不限于服务器规格、负载、磁盘IO性能、数据库限流等。
- 目标库的写入吞吐能力
写入吞吐能力越高,迁移速度越快,耗时越少。影响吞吐的因素包括但不限于服务器规格、负载、磁盘IO性能、数据库限流等。
- 可用的网络吞吐量
可用的网络吞吐越高,迁移速度越快,耗时越少。影响网络吞吐量的因素包括但不限于可用带宽、防火墙、网络设备限流设置等。
- 网络质量和网络延迟
网络延迟越小(影响因素包括但不限于源库目标库和DRS实例地理位置的远近程度),迁移速度越快,耗时越少。网络质量差(比如丢包率高)会降低迁移速度。
- DRS实例规格
DRS实例规格越大,迁移速度越快,耗时越少。
- 源数据的模型和分布
此类因素包括是否有主键、是否分区表、是否堆表、平均单行数据量大小、表的数量、索引数量等。
- 目标库是否已有数据
目标库已有数据可能导致迁移时数据冲突,导致性能下降。
- 目标库是否有触发器
目标库有触发器可能导致迁移时写入性能下降。
- 目标库备份和日志等相关设置
如无必要可在迁移期间关闭目标库备份和事务日志,可提升迁移性能。
- 源库增量数据产生速度
源库增量数据产生速度越快,增量数据追平的耗时越长。
- DRS任务数
不考虑其他因素导致的性能瓶颈,通过按表拆分成多个DRS任务,可提升总体迁移性能。
迁移时长预估
由于影响迁移时长的因素很多,因此没有通用的计算方式能准确的计算迁移耗时,用户可先参考实时同步链路规格说明进行评估。建议用户先使用和待迁移实例相同规格、负载、网络配置、数据模型的环境创建测试任务,以评估迁移时长。
迁移速度提升
全量:
- 如果受限于跟源库或目标库的网络带宽限制,需要扩大带宽;
- 源端负载不高的情况下,可以增加读和写的并发数;
- 扩大DRS的任务规格。
增量:
- 如果受限于跟源库或目标库的网络带宽限制,需要扩大带宽;
- 如果是受限于DRS规格的性能上限,需要改用更大规格的DRS任务;
- 如果受限于回放慢,增加回放并发数。