> 데이터 베이스 > MySQL 튜토리얼 > Oracle索引扫描

Oracle索引扫描

WBOY
풀어 주다: 2016-06-07 17:12:36
원래의
1082명이 탐색했습니다.

索引全扫描(index full scan)这种方式中,ORACLE会按照索引值的顺序全部扫描该索引,类似全表扫描,效率不高。CBO根据统计数据得

索引扫描不同于表扫描,表扫描只有一种类型就是全表扫描(full table scans),而索引扫描根据具体情况不同可以分为如下几类:

索引唯一扫描(index unique scan).这种扫描发生在主键或者唯一索引上,根据键值可以唯一确定要访问的记录,这种扫描方式因为返回的记录数少,能够快速定位记录,扫描效率较高

索引范围扫描(index range scan).这种撒么一般发生在返回多个值的时候,如where条件中>and

使用index rang scan的3种情况:

(a) 在唯一索引列上使用了range操作符(> >= (b) 在组合索引上,只使用部分列进行查询,导致查询出多行。
(c) 对非唯一索引列上进行的任何查询。

索引全扫描(index full scan)这种方式中,Oracle会按照索引值的顺序全部扫描该索引,类似全表扫描,效率不高。CBO根据统计数据得知进行全索引扫描比进行全表扫描更有效时,才能进行全索引扫描,而且此时查询出的数据都必须可以从索引中直接得到。

索引快速扫描(index fast full scan).与索引全扫描不同,不按照索引值的顺序来访问,而是直接读取索引块来访问索引数据。这种存取方法中,可以使用多块读功能。也可以直接使用并行读方法以便于获得最大吞吐量与缩短执行时间。

索引跳跃式扫描(index skip scan) .复合索引中第一个字段类型少,,而第二个字段唯一,当条件中用到第二个字段时,将跳过第一个字段。

实际OLTP系统中只有索引唯一扫描和索引范围扫描。

linux

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿