这个是并发的参数吗
大表添加索引,是个很头疼的问题,IO慢的话,要死人。
做了吗?有影响吗?
我这边加了以后,53亿的表1个小时就加完了,配置是3tidb 每个 8c 16g,
3tikv,每个16c128g
tidb_ddl_reorg_worker_cnt=4,tidb_ddl_reorg_batch_size=256
期间tikv使用率在50%左右
还是建议业务低峰期加
具体记不得了,肯定是超过12小时了 ![]()
那你应该是没有开fastddl 功能吧
这个也说不上零影响吧,同步数据不需要消耗CPU和IO?我理解这个也是差不多的。
低峰用在线 DDL 工具执行,预留磁盘,先校验索引选择性,全程监控 IO / 延迟,提前备份,灰度分批操作防业务卡顿。
50亿大表加二级索引,TiDB 支持在线 DDL 不阻塞读写,但要注意几点:一是加索引期间会有大量回填(backfill)扫描和写入,占用 TiKV 资源,建议在低峰期做,并调 tidb_ddl_reorg_worker_cnt、tidb_ddl_reorg_batch_size 控制回填速度和集群压力,避免影响业务;二是回填会产生大量写入,关注 Region 是否出现写热点,必要时提前打散;三是确认磁盘空间足够存放新索引,50亿量级索引本身占用可观;四是全程可通过 admin show ddl jobs 观察进度,中途可用 tidb_ddl_reorg_priority 调优先级。加完后记得 analyze 更新统计信息。
学习了