####4.2.1 聚簇因子(clustering_factor)

统计帮助优化器生成使用索引的成功信息,并且是表中建立了索引的数据排序优良度的一个度量值;向优化器表明了具有同样索引值的数据行是不是存放在同一个或连续的一系列数据块中,或者数据行是否被分散存放在表的多个数据块中。

查看索引的聚簇因子

select T.TABLE_NAME || '.' || I.INDEX_NAME index_name, I.CLUSTERING_FACTOR, T.BLOCKS, T.NUM_ROWS

from user_indexes i, user_tables t

where I.TABLE_NAME = T.TABLE_NAME

and T.TABLE_NAME = 'EMPLOYEES'

and I.INDEX_NAME = 'EMP_DEPARTMENT_IX'

order by T.TABLE_NAME, I.INDEX_NAME;

INDEX_NAME CLUSTERING_FACTOR BLOCKS NUM_ROWS

------------------------------ ----------------- ---------- ----------

EMPLOYEES.EMP_DEPARTMENT_IX 9 5 109

计算索引的聚簇因子

select department_id, last_name, blk_no,

lag (blk_no, 1, blk_no) over (order by department_id) prev_blk_no,

case when blk_no != lag (blk_no, 1, blk_no) over (order by department_id) or rownum = 1

then '*** +1'

else null

end cluf_ct

from (

select department_id, last_name,

DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid) blk_no

from HR.EMPLOYEES

where department_id is not null

order by department_id

);

DEPARTMENT_ID LAST_NAME BLK_NO PREV_BLK_NO CLUF_CT

------------- ------------------------- ---------- ----------- -------

10 Whalen 203 203 *** +1

20 Hartstein 203 203

20 Fay 203 203

30 Raphaely 207 203 *** +1

30 Colmenares 207 207

30 Khoo 207 207

........

40 Mavris 203 207 *** +1

50 Grant 203 203

........

50 Cabrio 207 203 *** +1

........

60 Raphealy 205 207 *** +1

60 Raphealy1 205 205

60 Austin 207 205 *** +1

60 Ernst 207 207

60 Hunold 207 207

70 Baer 203 207 *** +1

80 Hall 207 203 *** +1

80 Livingston 207 207

........

100 Greenberg 207 207

110 Higgins 203 207 *** +1

110 Gietz 203 203

107 rows selected.

注: 如果你开始考虑重建表来改进聚簇因子,你需要很小心。表一般都有多个索引。你不可能通过重建表的方法使其排序方式适合某个索引而不影响其他列上的索引。因此,重建可能帮组改进了一个索引却破坏了其他的索引。并且,重建表通常是非常耗费时间和资源的过程,因为你今天按照一定的顺序重建了表并不意味着随着时间的推移,数据行插入、更新或删除之后还能保持这样的顺序。

oracle 修改聚簇因子,Oracle 基础篇 --- 聚簇因子(clustering_factor)相关推荐

  1. oracle修改10到20,Oracle 10.2.0.5 RMAN迁移并升级11.2.0.4一例

    一.环境介绍 1. 源数据库环境 操作系统版本: OEL 5.4 x64 数据库版本  : 10.2.0.5 x64 数据库sid名 : orcl Oracle 10g 10.2.0.5(64bit) ...

  2. Oracle修改表存储参数,Oracle存储结构之参数文件

    Oracle的参数文件非常之多,但最重要的当属数据库参数文件.而数据库参数文件有pfile和spfile两类.pfile需手动修改,是文本文件 Oracle的参数文件非常之多,但最重要的当属数据库参数 ...

  3. 修改pom文件_自动化测试基础篇:Selenium 框架设计(POM)

    (给Python开发者加星标,提升Python技能) 来源:  叁藏法师 https://www.cnblogs.com/sanzangTst/p/8376550.html [导语]Selenium是 ...

  4. oracle修改字段的默认,oracle系统默认的账号ORACLE修改表字段的数据类型

    ORACLE修改表字段的数据类型 项目需求变更,需要用到备用字段,开始以为是这样改表的: alter table tablename alter column colname newDataType ...

  5. oracle修改数据前备份,Oracle 之利用BBED修改数据块SCN—-没有备份数据文件的数据恢复...

    测试环境 OS:redhat6.6 oracle:12.1.0.2 BBED(OracleBlockBrowerandEDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle ...

  6. 改了计算机名oracle,修改计算机名称导致Oracle的em不能用

    我是因为修改计算机名称导致Oracle不能用,进行了以下的配置,之后就好了.希望对你有用 Oracle 安装好后 hostname是不能乱改的. How to change the Hostname ...

  7. oracle修改数据文件个数,Oracle修改数据文件名/移动数据文件

    生产上有时会用到数据文件的迁移,下边示例几种数据文件的迁移方法. 数据库版本sys@ORCL>select * from v$version; select * from v$version; ...

  8. oracle修改数据库国际字符集,Oracle修改数据库字符集

    1.(Window:)cmd下输入set ORACLE_SID=你想进入的数据库的那个sid (Linux:)切换到oracle用户:export  ORACLE_SID=你想进入的数据库的那个sid ...

  9. 12c oracle 修改内存_关于Oracle数据库12c 新特性总结

    概述 今天主要简单介绍一下Oracle12c的一些新特性,仅供参考. 参考: http://docs.oracle.com/database/121/NEWFT/chapter12102.htm#NE ...

最新文章

  1. 在Spring Boot中使用 @ConfigurationProperties 注解 (二十六)
  2. 一步一步SharePoint 2007系列文章目录
  3. java----代理机制或动态类的生成
  4. Linux--DHCP
  5. 带你认识“货真价实”的P2P网贷风控
  6. 使用lock同步线程,建立了10个线程实例
  7. windows下如何github ssh 公钥
  8. Navicat工具导出mySQL数据库某个视图结构的.sql脚本
  9. 简述python程序的运行原理_谈谈 Python 程序的运行原理
  10. LeetCode004-寻找两个正序数组的中位数(Median of two sorted arrays)-Rust语言实现
  11. Java中static、final用法小结
  12. NOIP模拟测试25
  13. 2013年国家计算机等级考试c语言考试真题,2013年3月计算机等级考试二级C语言真题及答案.doc...
  14. linux系统命令 回顾2
  15. soapui 免费版 实现 datasource+ dataLoop
  16. python 存储对象_Python使用redis存储对象
  17. android 饿了么 布局,Android仿饿了么详情页可以跟随手指移动 viewpager变详情页
  18. Matlab subs函数的使用方法
  19. html5+JS制作音乐播放器
  20. Bootstrap导航和导航条

热门文章

  1. 0408互联网新闻 | 区块链医疗解决方案落地应用,阿里云、支付宝共同研发;安卓全球开发者峰会将于10月23-24日在加州召开...
  2. 【易创课堂】第4期深圳开讲,还有大包好礼!
  3. 解决manjaro更新后pacman: error while loading shared libraries
  4. javascript返回上一页的三种写法
  5. Java easycms 版本2.0发布
  6. 基于Erlang的并发程序简要
  7. Windows Azure 数据安全(清理和泄漏)
  8. 菜鸟成长日记(四)之WMIC简单命令应用
  9. 404. 左叶子之和
  10. 1209. 删除字符串中的所有相邻重复项 II