【TiDB 4.0 PCTA 学习笔记】- 3.6.1 Data migration tools introduction (TiDB 数据迁移工具介绍)@1班:魔幻之翼

课程名称:课程版本(301)+ .6.1 Data migration tools introduction (TiDB 数据迁移工具介绍)

学习时长:

9分钟

课程收获:

掌握数据迁移的工具和相关的应用场景,可以针对不同的场景,选择适当的工具来完成业务迁移操作

课程内容:

主要学习

  • dumpling
  • lightning
  • Data Migration (2.0)

dumping 导出数据,格式为 sql 或者 csv,逻辑上的全量备份和导出

dumping 特性

  • 支持 多种格式,Sql 和CSV
  • 支持表过滤和数据过滤
  • 支持配置单条SQL 的内存限制
  • 支持自动调整GC 时间,4.0 及以上的版本
  • 使用隐藏列的Rowid 优化了 单表的导出性能
  • 可以指定snapshot(时间版本)的数据进行备份,可以保证数据的一致性

Lightning 可以将全量数据快速的导入到 tidb

Lightning 使用场景

  • 有大量的新数据需要导入
  • 需要全量备份数据的恢复

Lightning 会自动将tikv 切换到数据导入模式,数据自动压缩进行传递

单表超过200GB 可以以增量的方式,并行导入

Lightning 特性

引擎文件包含两种

  • 数据引擎
  • 索引引擎

各对应两种键值对,两种类型的数据在写入时,也会有不同的时机和策略

另外,在写入完成后,Lightning 会检查数据是否一致

Data Migration

数据迁移任务一体化的管理平台,支持Mysql 或者 MariaDB 到 tidb 全量数据迁移,或者增量数据复制

简化迁移流程,降低运维成本

特性

  • 表路由
    • 上游Mysql 表中的数据迁移到 下游的指定表中
  • 支持黑白名单过滤功能和过滤规则
  • binlog event 过滤功能 (粒度更细)
  • 在线管理DDL Schema
  • 分库分表的迁移合并
    • 将上游mysql 表结构相同或者不同的的数据,迁移到 tidb 同一个表中

DM (2.0) 的架构图

Dm worker 负责迁移任务的执行

dmctl 命令行操作工具

学习过程中遇到的问题或延伸思考:

  • 问题 1:DM 和 Lightning 有什么不同,在操作中是否需要考虑数据量级带来的挑战
  • 问题 2:
  • 延伸思考 1:
  • 延伸思考 2:

学习过程中参考的其他资料