堆表的表行在数据块中的存储是无序的,而索引的键值又是有序的,当这两者差异越大,聚簇因子的值就越高。

The index clustering factor measures row order in relation to an indexed value such as employee last name.
The more order that exists in row storage for this value, the lower the clustering factor.

The clustering factor is useful as a rough measure of the number of I/Os required to read an entire table by means of an index:

  • If the clustering factor is high, then Oracle Database performs a relatively high number of I/Os during a large index range scan. The index entries point to random table blocks, so the database may have to read and reread the same blocks over and over again to retrieve the data pointed to by the index.
  • If the clustering factor is low, then Oracle Database performs a relatively low number of I/Os during a large index range scan. The index keys in a range tend to point to the same data block, so the database does not have to read and reread the same blocks over and over.

The clustering factor is relevant for(相关的) index scans because it can show:

  • Whether the database will use an index for large range scans
  • The degree of table organization in relation to the index key [in relation to: 与...相关,与...相比较]
  • Whether you should consider using an index-organized table, partitioning, or table cluster if rows must be ordered by the index key
-- By 许望(RHCA、OCM、VCP)
最后修改:2020 年 01 月 02 日 08 : 18 PM
如果觉得我的文章对你有用,请随意赞赏