文档首页> 数据复制服务 DRS> 常见问题> 产品咨询> 影响DRS任务速度的因素有哪些以及如何进行耗时预估
更新时间:2023-09-26 GMT+08:00
分享

影响DRS任务速度的因素有哪些以及如何进行耗时预估

影响因素

  • 源库的读取吞吐能力

    读取吞吐能力越高,迁移速度越快,耗时越少。影响吞吐的因素包括但不限于服务器规格、负载、磁盘IO性能、数据库限流等。

  • 目标库的写入吞吐能力

    写入吞吐能力越高,迁移速度越快,耗时越少。影响吞吐的因素包括但不限于服务器规格、负载、磁盘IO性能、数据库限流等。

  • 可用的网络吞吐量

    可用的网络吞吐越高,迁移速度越快,耗时越少。影响网络吞吐量的因素包括但不限于可用带宽、防火墙、网络设备限流设置等。

  • 网络质量和网络延迟

    网络延迟越小(影响因素包括但不限于源库目标库和DRS实例地理位置的远近程度),迁移速度越快,耗时越少。网络质量差(比如丢包率高)会降低迁移速度。

  • DRS实例规格

    DRS实例规格越大,迁移速度越快,耗时越少。

  • 源数据的模型和分布

    此类因素包括是否有主键、是否分区表、是否堆表、平均单行数据量大小、表的数量、索引数量等。

  • 目标库是否已有数据

    目标库已有数据可能导致迁移时数据冲突,导致性能下降。

  • 目标库是否有触发器

    目标库有触发器可能导致迁移时写入性能下降。

  • 目标库备份和日志等相关设置

    如无必要可在迁移期间关闭目标库备份和事务日志,可提升迁移性能。

  • 源库增量数据产生速度

    源库增量数据产生速度越快,增量数据追平的耗时越长。

  • DRS任务数

    不考虑其他因素导致的性能瓶颈,通过按表拆分成多个DRS任务,可提升总体迁移性能。

迁移时长预估

由于影响迁移时长的因素很多,因此没有通用的计算方式能准确的计算迁移耗时,用户可先参考如下数据进行评估。建议用户先使用和待迁移实例相同规格、负载、网络配置、数据模型的环境创建测试任务,以评估迁移时长。

DRS任务全量阶段迁移速度:

  • MySQL为源链路:50MB/s。
  • Oracle为源链路:40MB/s。
  • Redis为源全量+增量链路:30MB/s。
  • GaussDB为源链路:40MB/s。
  • DDM为源链路:20MB/s。
  • MongoDB为源链路:20MB/s。
  • PostgreSQL为源链路:30MB/s。
  • 影响DRS迁移速度的因素很多,当前全量阶段迁移速度为网络和数据库性能无瓶颈、任务为大规格时的测试数据,仅供用户进行参考。
  • 当目标数据库为Oralce或者GaussDB(DWS)时,受限于目标数据库写入机制,全量速度相较于其他类型数据库下降30%~50%。
  • MongoDB数据库的写入性能会受索引个数影响,单个索引影响5-8%,索引越多,速度越慢。
分享:

产品咨询 所有常见问题

more