TiDB 的“聚簇因子” -- 从 cop task 到 shard_row_id_bits
作者: pepezzzz 原文来源:https://tidb.net/blog/086d700a 引言 Oracle 的聚簇因子: 表中建立了索引的数据排序优良度的一个度量值;向优化器表明了具有同样索引值的数据行是不是存放在同一个或连续的一系列数据块中,或者数据行是否被分散存放在表的多个数据块中。简单地说,Oracle 数据库的聚簇因子信息,能反映出索引范围扫的回表成本。# 从案例看 cop task## 案例1下图是一个 SQL 的执行计划,选中行是 IndexLookUp 算子回表后过滤算子。从右侧 Operator Info 栏中的可见,416 行的索引回表过滤需要使用 26 的 cop task,可以简单地认为 416 行表数据处于 26 个 region 中。经过数据 “按序” 的导出和导入:a. dumpling --sql “select * from a order by cus_id” -F 100MiB --output-filename-template …b. tidb-lightning下图是 SQL 的新执行计划,执行计划完全一样,效率有较大的提升。从右侧 ...