14 мая 2011 г.

oracle: CLUSTERING FACTOR (фактор кластеризации)

CLUSTERING FACTOR - столбец в представлениях dba_indexes, user_indexes.

Показывает, насколько упорядочены строки в таблице по значениям индекса.

Если значение близко к общему количеству блоков, значит, таблица очень хорошо упорядочена. В этом случае записи индекса в одном листовом блоке обычно указывают на строки, находящиеся в одних и тех же блоках данных.

Если значение близко к общему количеству строк, значит, таблица весьма неупорядочена. В этом случае маловероятно, что записи индекса в одном листовом блоке указывают на те же блоки данных.

-- посмотреть и оценить фактор кластеризации (перед этим нужно собрать статистику)
exec dbms_stats.gather_table_stats(ownname=>'GUPPI', tabname=>'T', cascade=>true);

select a.index_name, b.num_rows, b.blocks, a.clustering_factor
from user_indexes a, user_tables b
where a.table_name = b.table_name and a.table_name='T';