Index
文章平均质量分 70
EVISWANG
这个作者很懒,什么都没留下…
展开
-
索引 概述
--创建使用索引--索引是一个独立的schema对象,是单独存储的--索引用来提高查询操作的性能 --索引可以自动或手工创建:--自动创建只存在于:表的列设置了primary key或者unique约束如果你定义了这两个约束,索引就自动创建出来了 --索引由oracle自动使用和维护 createtable cempas select* from emp原创 2015-11-21 16:33:57 · 433 阅读 · 0 评论 -
create index online 异常处理 ORA-08104
开发online加了条索引,等了半小时没结果手动CRTL+C了,没起作用直接把窗口关了SQL> drop index clspuser.SPLIT_RSLT_HB_STATUS_IDX ; drop index clspuser.SPLIT_RSLT_HB_STATUS_IDX *ERROR at line 1:ORA-00054: resou原创 2016-11-29 14:04:07 · 1127 阅读 · 0 评论 -
联合索引 一例
查看表所有着select OWNERfrom dba_objects where object_name='TBL_TVI1';查表大小select sum(bytes)/1024/1024from dba_segments t where t.segment_name='TBL_TVI1';执行计划explain plan for SELECT SK原创 2015-11-19 16:18:12 · 579 阅读 · 0 评论 -
ORA-20000: index "FCSASUSER"."IDX_DN_TREE_ID" or partition of such index is in unusable state
alert日志发现如下报错:Sat Jul 30 06:00:12 CST 2016Errors in file /u01/app/oracle/admin/crfdw/bdump/crfdw_j001_17225.trc:ORA-20000: index "FCSASUSER"."IDX_DN_TREE_ID" or partition of such index is in un原创 2016-08-02 16:50:38 · 1563 阅读 · 0 评论 -
二元高度
1. 索引查找的过程 1.> 根据树进行定位,找出ROWID (索引查找) 2.> 根据ROWID找出表中的数据行(表数据查找)2.概述 索引的二元高度对把ROWID返回给用户进程时所要求的的I/O数量起到关键作用。二元高度每个级别都会增加一个额外的块读取操作,而且由于这些块不能按顺序读取,他们都要求一个独立的I/O操作,而且由于这些块不能按顺序读取,他们都要求一个独立原创 2016-02-19 11:32:21 · 645 阅读 · 0 评论 -
集群因子
1. 优化器决定是否用索引的关键因素 1.> 选择性参考:http://blog.csdn.net/eviswang/article/details/50674063 2.> 集群因子2. 概念 集群因子(ClusteringFactor)是如果通过一个索引扫描一张表,需要访问的表的数据块的数量。3. 集群因子的计算方法(1) 扫描一个索引;(2) 比较某行的R原创 2016-02-19 09:42:31 · 1164 阅读 · 0 评论 -
索引的选择性
SQL> select table_owner, table_name, index_name,distinct_keys, num_rows from user_indexes where table_name='EMP'; TABLE_OWNER TABLE_NAME INDEX_NAME原创 2016-02-16 12:38:20 · 587 阅读 · 0 评论 -
索引抑制
索引抑制是一些没有经验的开发人员经常犯的错误之一。在oracle中有很多陷阱会使一些线索无法使用。 oracle优化器在后台工作,选择并使用可能最有效的方法来返回数据。例如,在许多情况下不需要指定where子句oracle就可以使用索引。具体来说,如果查询索引列的min和max值,oracle从索引中就可以得到结果,而不需要去访问表;类似的,如果对索引列执行count函数,o原创 2016-02-16 11:23:31 · 761 阅读 · 0 评论 -
组合索引
定义:当某个索引包含多个列时,我们称这个索引为“组合索引”或“复合索引”。oracle 9i引入索引跳跃式扫描增加了优化器在使用组合索引时的选择,所以您在选择索引的列的顺序时应该谨慎。索引跳跃式扫描 (index skip scan)索引跳跃式扫描适合于组合索引,比如(deptno,sal),当根据组合索引的第一个列deptno做查询时,通常是可以用的到索引的,当你想使用第二个列sa原创 2016-02-16 09:34:05 · 472 阅读 · 0 评论 -
visible invisible索引
SQL> show userUSER is "SCOTT"SQL> create index emp_id1 on emp(empno, ename, deptno);SQL> create index emp_id2 on emp (sal);查看创建索引信息:SQL> select table_name, index_name from user_indexes wher原创 2016-02-15 17:13:01 · 450 阅读 · 0 评论 -
位图索引 Bitmap index
1) 原理一个键值对应很多行(rowid), 格式:键值start_rowid end_rowid 位图2) 适用场合列的基数很少,可枚举,重复值很多,数据不会被经常更新3) 优点OLAP 例如报表类数据库重复率高的数据特定类型的查询例如count、or、and 等逻辑操作因为只需要进行位运算即可得到我们需要的结果4) 缺点不适合重复率低的字段,还有经常DML 操作原创 2015-12-20 11:01:15 · 1062 阅读 · 0 评论 -
数值转换导致不走索引
一. 问题描述:表的数据量1300万+ 搜索列为50-80w每次都全表扫描,性能很差SQL> set autotrace onSQL> select count(*) from clspuser.crf_p2p_interest_split_rslt t where t.hb_status=1; COUNT(*)---------- 782889Executi原创 2016-11-29 11:28:01 · 464 阅读 · 0 评论