ITPub博客

首页 > 数据库 > Oracle > oracle集群因子介绍

oracle集群因子介绍

原创 Oracle 作者:wanglinghua0907 时间:2024-01-09 10:20:54 0 删除 编辑

查看索引集群因子

select OWNER,INDEX_NAME,CLUSTERING_FACTOR from dba_indexes where owner='DEF' and index_name='IDX_XX2';


查看总行数

select count(*) from def.employee;


集群因子约接近总行数(越大),回表的时候会读更多数据块


集群因子影响索引回表的物理io次数


可以降低集群因子的方式是(但实际情况不可取,因无法照顾到所有索引,除非只有一个索引,且愿意重建表):

根据索引列排序对表进行重建(create table new_table as select * from old_table order by 索引列)



或者可以消除或者减少回表达到效果


再或者表中所有数据块缓存在buffer cache中,不需要物理io了


总结:

集群因子大且约接近总行数,回表时读的块更多。


优化方法:

1.降低集群因子(方法见上)

2.减少回表或者消除回表(方法见 oracle SQL优化——概念——索引回表)

3.表中所有数据块缓存在buffer cache中,不需要物理io


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980685/viewspace-3003159/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE、sql server、oceanbase数据库专家,拥有7年以上的大型数据库运维经验,主方向oracle,擅长故障排除、诊断,大体量(TB)迁移,异常故障修复等。拥有丰富主导大型项目经验。服务行业包括:运营商、银行、金融业、政府单位、医疗、制造业、高校等等。

注册时间:2020-07-31

  • 博文量
    116
  • 访问量
    88793