更新时间:2024-03-29 GMT+08:00

迁移作业原理

数据迁移模型

CDM数据迁移时,简化的迁移模型如图1所示。

图1 CDM数据迁移模型
CDM通过数据迁移作业,将源端数据迁移到目的端数据源中。其中,主要运行逻辑如下:
  1. 数据迁移作业提交运行后,CDM会根据作业配置中的“抽取并发数”参数,将每个作业拆分为多个Task,即作业分片。

    不同源端数据源的作业分片维度有所不同,因此某些作业可能出现未严格按作业“抽取并发数”参数分片的情况。

  2. CDM依次将Task提交给运行池运行。根据集群配置管理中的“最大抽取并发数”参数,超出规格的Task排队等待运行。

性能影响因素

根据迁移模型,可以看出CDM数据迁移的速率受源端读取速度、网络带宽、目的端写入性能、CDM集群和作业配置等因素影响。

表1 性能影响因素

影响因素

说明

业务相关因素

作业抽取并发数配置

创建CDM迁移作业时,支持设置该作业的抽取并发数。

该参数设置为适当的值可以有效提升迁移速度,过小则会限制迁移速度,过大则会导致任务过载、迁移失败。

  • 迁移的目的端为文件时,CDM不支持多并发,此时应配置为单进程抽取数据。
  • 表中每行数据大小为1MB以下的可以设置多并发抽取,超过1MB的建议单线程抽取数据。

集群最大抽取并发数规格

该参数设置为适当的值可以有效提升迁移速度,过小则会限制迁移速度,过大则会导致源端负载过高、影响系统稳定性。

不同规格的CDM集群支持的的最大抽取并发数规格不同,并发数上限建议设置为vCPU核数*2。

  • cdm.large:16
  • cdm.xlarge:32
  • cdm.4xlarge:128

业务模型

如果大量CDM作业同时执行,当超过当前CDM集群的并发执行作业数时,会导致作业排队,耗时提升。

建议您将迁移作业的运行时间错开,平摊在业务周期内,避免资源紧张导致迁移时间过长。

数据模型

数据迁移时,对于不同的数据结构,迁移速度也会受到一定影响。例如:

  • 对于表迁移,宽表的迁移速度较慢,字符串类型越多(字段大小)迁移速度越慢。
  • 对于文件而言,总大小相同时,大文件迁移较快,多个小文件迁移较慢。
  • 对于消息而言,消息内容越多,所占带宽越高,每秒事务(TPS)越低。

源端读取速度

取决于源端数据源的性能。

如需优化,请参见源端数据源的相关说明文档。

网络带宽

CDM集群与数据源之间可以通过内网、公网VPN、NAT或专线等方式互通。

  • 通过内网互通时,网络带宽是根据不同的CDM实例规格的带宽限制的。
    • cdm.large实例规格CDM集群网卡的基准/最大带宽为0.8/3 Gbps
    • cdm.xlarge实例规格CDM集群网卡的基准/最大带宽为4/10 Gbps
    • cdm.4xlarge实例规格CDM集群网卡的基准/最大带宽为36/40 Gbps
  • 通过公网互通时,网络带宽受到公网带宽的限制。CDM侧公网带宽规格受限于CDM集群所绑定的弹性公网IP,数据源侧受限于其所访问的公网带宽规格。
  • 通过VPN、NAT或专线互通时,网络带宽受到VPN、NAT或专线带宽的限制。

目的端写入性能

取决于目的端数据源的性能。

如需优化,请参见目的端数据源的相关说明文档。