课程名称:课程版本(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: