增加 Add Index 限速机制

需求反馈

【需求涉及的问题场景】

  • 线上对延迟敏感的 OLTP 核心业务。引入 TiDB 之后不再推动业务分库分表,此时单表数据量经常数 TB ,增加索引耗时一般都跨天甚至跨周,期间经历了数个业务高峰期,仅仅依赖于调整添加索引的 batch 大小和并发度无法满足业务高峰期的响应延迟需求,目前只能尝试低峰期添加索引,到高峰期人工观察延迟,如果发现业务延迟上升,影响业务正常运行则立刻终止加索引。

【期望的需求行为】

  • 暂定当前的加索引操作。MySQL 的在线改表工具 gh-ostpt-osc 都提供了限速功能,当限速的时候,可以暂停向主库写入数据,且支持根据负载,复制延迟,时间窗口等多种方式的限速。

【需求可替代方案】

  • 将大表拆分多个小表

【背景信息】