关于mysql:快速地完成亿级别MySQL大表迁移

37次阅读

共计 1541 个字符,预计需要花费 4 分钟才能阅读完成。

MySQL 作为以后利用最宽泛的开源关系型数据库之一,具备高性能、稳定性和易用性等个性,是许多网站、利用和商业产品的次要数据存储。在一些场景中,如果呈现单表行数上亿的状况,就可能须要开发和 DBA 对大表进行优化:分表、归档或扩容操作,而在这些操作中都波及了对数据的迁徙。所以,提供高效、精确、稳固的大表迁徙能力是十分有必要的。

1. 传统的迁徙计划

目前,数据迁徙次要分为逻辑迁徙和物理迁徙,逻辑迁徙次要有 mysqldump、mysqlpump 和 load data,物理迁徙次要有 XtraBackup。对于这类导入导出和拷贝文件的传统迁徙计划,在大表迁徙中会存在一些问题:

  • 须要停机,对于物理迁徙,不能保障在线业务。
  • 性能差,对于逻辑迁徙,单线程导出表。
  • 可靠性差,导出异样后,不反对断点,须要从新导出。
  • 运维性差,迁徙期间,不能对导入导出进行暂停、限流等操作。

2. 当先的迁徙计划

NineData 提供的数据复制同时蕴含了数据迁徙和数据同步的能力,在不影响业务的前提下,提供了高效、稳固、可运维的大表迁徙能力。对大表(单表 227G,行数 10 亿)迁徙:NineData 约 30 分钟实现迁徙,均匀速率 124.2 MB/s,均匀 534188 RPS。

通过对 MySQL 大表迁徙的性能测试,和传统迁徙比,NineData 数据迁徙的劣势有:

  • 简略易用:一分钟即可实现工作配置,并全自动化实现工作迁徙。
  • 强劲性能:欠缺的智能分片、行级并发、动静攒批等核心技术,无效保障迁徙性能。
  • 高牢靠:联合新型断点、异样诊断及丰盛的修复伎俩,对于迁徙过程中可能呈现软硬件故障,提供欠缺的容灾能力,大大提高了大表迁徙的成功率。

通过上述劣势,保障了 NineData 在大表迁徙场景下的当先性。另外,NineData 还提供了比照性能,蕴含数据和构造的比照,以及全量、疾速和不统一复检的比照形式,并且也反对不同的比照频率。在迁徙或复制完结后,通过数据和构造比照,能无效的保障数据的一致性。

NineData 在提供弱小迁徙能力的同时,也保障了应用的简略性,只须要 1 分钟就能实现迁徙工作的配置,实现齐全自动化的数据迁徙过程。上面咱们来看下整个工作的配置过程:

迁徙链路的配置

  1. 配置工作名称,抉择要迁徙的源和指标实例。
  2. 抉择复制类型,数据迁徙抉择构造和全量复制(数据迁徙)。
  3. 依据须要,抉择适合的抵触解决策略。
  4. 点击下一步,进行迁徙对象的抉择。

抉择迁徙对象

抉择迁徙对象:针对不同粒度抉择迁徙对象:实例、库、表、视图等。

配置映射和过滤规定:指标实例能够自定义迁徙的库名、表名和依照过滤条件进行局部数据迁徙,也能够针对表的列名进行映射和局部列迁徙。

预查看

通过丰盛的查看项,保障了迁徙工作的稳定性及和数据的一致性。到此,咱们就实现了一个高性能迁徙工作的配置。

同时,为了提供更好的迁徙体验,NineData 针对迁徙过程提供了欠缺的观测、干涉能力。其岂但提供对象迁徙的具体状态、停顿、详情,还通过监控和日志走漏后盾线程的外部执行状况,帮忙用户全方位追踪迁徙停顿。同时,还针对运行过程中可能呈现的异常情况,提供根底诊断能力,及修复、跳过、移除等多种修复策略和迁徙限流能力,让用户可能自主疾速得诊断并修复链路,保障迁徙稳定性。

3. 总结

NineData 提供的高效、疾速、稳固的 MySQL 大表迁徙能力,很好的补充了传统迁徙计划的有余。以后,NineData 曾经反对数十种常见数据库的迁徙复制,同时,除了 SAAS 模式外,还提供了企业专属集群模式,满足企业最高的数据安全合规要求。目前,NineData 已在运营商、金融、制造业、地产、电商等多个行业实现大规模利用实际。如果您感兴趣的话,能够登录官网 https://www.ninedata.cloud/dbmigration,立刻开始收费应用。

正文完
 0