索引回表与聚合因子

由于索引块中存储了索引列的值,所以在检索项为索引列时,可以避免回表;

或者通过建组合索引防止回表;

即使一定要回表,也存在性能差异。这里涉及到聚合因子。

当表数据的插入顺序与索引的插入顺序相似度很高时,我们称之为聚合因子比较低;差异明显的,我们称之为聚合因子比较高。

聚合因子低的查询效率高。


查看聚合因子高低的语句:

CLUSTERING_FACTOR 即为聚合因子,官方解释:表明有多少临近的索引条目指到不同的数据块;

select a.index_name,
       b.num_rows,
       b.blocks,
       a.clustering_factor
  from user_indexes a, user_tables b
where index_name in ('COLOCATED_PK', 'DISORGANIZED_PK' )
  and a.table_name = b.table_name;


INDEX_NAME                       NUM_ROWS     BLOCKS CLUSTERING_FACTOR
------------------------------            ----------             ----------    -----------------
COLOCATED_PK                       100000       1252              1190
DISORGANIZED_PK                    100000       1219             99899

发布了83 篇原创文章 · 获赞 6 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章