TIDB大表备份有什么推荐方案吗

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:3.0.9
  • 【问题描述】:

tidb之前测试过用mydumper备份数据,10张 1000w的表,总数据量20g,开2个线程备份。备份时间大概4分钟,效率不错。备份总大小也是20g左右

但是目前线上环境只有一张表,记录数是3000w,字段有300个,是个大宽表,数据量占磁盘大概40g,这个时候用mydumper效率很差,要2个小时,备份总大小超过数据大小的2倍,达到90g+

备份参数用了-r 200000,看了备份文件,实际占磁盘大概每个数据文件是600M

1、数据存储在 TiKV 中,是有压缩的,具体的压缩方式可以参考下,TiKV 的配置参数 compression-per-level

2、目前在使用 Mydumper 进行备份时建议通过调整 thread 等参数来提高备份的效率,但是也需要注意降低备份对当前集群稳定性的影响

3、在 3.1 版本引入了 BR ,相关链接如下: