rockdb delete太高导致sql延迟变高

Coprocessor Overview —> Total RocksDB Perf Statistics 表示 RocksDB 的性能统计数据,包括扫描的 key 的 mvcc 版本,以及 tombstone key 的数量。除此之外, 还有下面两个相关的监控项:

  • Table Scan - Perf Statistics:执行 table scan 的时候,根据 perf 统计的 RocksDB 内部 operation 的个数
  • Index Scan - Perf Statistics:执行 index scan 的时候,根据 perf 统计的 RocksDB 内部 operation 的个数

key 的 mvcc 版本在 GC 的 Do GC 这一步即删除所有 key 的过期版本。但是这个 key 仅会被标记为删除,在 compaction 后,才会真正的被删除掉。

所以出现上面的问题,可以检查下 GC 或者 compaction 相关的监控,比如是否在 20 点前后进行了 compaction 操作,操作后,tidb duration 下降了。

在 『读性能慢』的文档中也有提到类似的问题,见下述文档: