lightning导入数据最后的三步检验特别慢

image

compact :执行这个一步是为了什么,只是为了格式化数据row格式吗?

analyze : ```这一步只是为了索引优化吗,

这两步去掉的话,会有什么影响?我担心是不是lightning把数据线导入一个节点上面,然后通过这几步开始分发数据到各个节点,如果这样的话那这几步肯定是不会去掉的!

你好

ANALYZE TABLE 语句用于更新 TiDB 在表和索引上留下的统计信息。执行大批量更新或导入记录后,或查询执行计划不是最佳时,建议运行 ANALYZE TABLE

在 tidb lighting 中:

数据导入完成后,tidb-lightning 可以自动执行 Checksum、Compact 和 Analyze 操作。

**在生产环境中**,建议这将些参数都设为 true。如果是测试环境可以将其设置为 false,提升整理导入速度

执行的顺序为:Checksum -> Compact -> Analyze。

设置 TiDB 会话变量,提升 Checksum 和 Analyze 的速度。
各参数定义可参阅”控制 Analyze 并发度“文档
build-stats-concurrency = 20
distsql-scan-concurrency = 100
index-serial-scan-concurrency = 20
checksum-table-concurrency = 16

噢噢明白了

:ok_hand:

这个全量导入的数据,导入结束后drainer会把这些数据同步到下游吗?我发现我这里全量导入的数据只同步了表结构到下游。但是drainer状态是up!此时再对tidb进行一些操作也可以同步!

你好,

drainer 是 tidb binlog 的组件,lighting 是快速导入工具(快速带入 mydumper 备份出来的文件),如果将此 tidb 作为上游数据库,通过 tidb binlog 将数据备份到下游数据库是可行的,mydumper 中是 sql 语句。