国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > Oracle > 正文

ORACLE9i新特性—索引跳躍式掃描

2024-08-29 13:39:39
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  索引跳躍式掃描(index skip scan)是Oracle9i用來(lái)提高性能的新特性,對(duì)于使用復(fù)合索引的數(shù)據(jù)庫(kù)應(yīng)用程序意義尤為重大。
  
  復(fù)合索引(又稱為連接索引)是一個(gè)包含多個(gè)字段的索引。在ORACLE9i以前的ORACLE版本里,只有那些在WHERE子句里引用整個(gè)索引或者是引用索引的一個(gè)或多個(gè)前導(dǎo)字段的查詢,才能使復(fù)合索引有效而提高檢索效率。而在ORACLE9i里,一個(gè)復(fù)合索引即使在一次查詢中沒(méi)有使用前導(dǎo)字段,也可能通過(guò)“索引跳躍式掃描”被有效引用。在一次跳躍式掃描中,每個(gè)復(fù)合索引前導(dǎo)字段的獨(dú)特值(DISTINCT VALUE)只會(huì)被搜索一次,ORACLE9i會(huì)在復(fù)合索引前導(dǎo)字段每個(gè)獨(dú)特值區(qū)間結(jié)合WHERE子句中的其它復(fù)合索引字段搜索符合條件的目標(biāo)記錄,這種做法的結(jié)果導(dǎo)致了在索引中的跳躍式掃描。
  
  索引跳躍式掃描主要有兩個(gè)優(yōu)點(diǎn):
   1、以前版本中的表掃描(TABLE SCAN)可能會(huì)轉(zhuǎn)變?yōu)樗饕龗呙瑁岣吡四承┎樵兊膱?zhí)行效率;
   2、應(yīng)用程序使用較少的索引就能達(dá)到提高效能的目的,并且既節(jié)省存儲(chǔ)空間,又能提高DML和維護(hù)操作的效率。
  
  假設(shè)有一個(gè)汽車注冊(cè)信息的表,包含了250萬(wàn)條紀(jì)錄,結(jié)構(gòu)如下:
   REGISTERED_OWNERS
   (STATE VARCHAR2(2) NOT NULL,
   REGISTRATION# VARCHAR2(10) NOT NULL,
   FIRST_NAME VARCHAR2(30),
   LAST_NAME VARCHAR2(30),
   MAKE VARCHAR2(30),
   MODEL VARCHAR2(15),
   YEAR_MFG NUMBER,
   CITY VARCHAR2(30),
   ZIP NUMBER)
  
  進(jìn)一步假設(shè)在字段(STATE,REGISTRATION#)上存在一個(gè)復(fù)合索引,那么下面語(yǔ)句的執(zhí)行速度會(huì)有很大提高:
   SELECT first_name, last_name, zip FROM REGISTERED_OWNERS
   WHERE registration# = '4FBB428'
  使用索引查詢速度大約可以提高90倍,在ORACLE8i(索引跳躍式掃描)中,這個(gè)查詢需要21.42秒,而同樣的硬件配置使用ORACLE9i只需要0.24秒。
  
  索引跳躍式掃描非常有效,對(duì)用戶和應(yīng)用程序而言是透明的,并且不需要使用額外的新索引就能提高數(shù)據(jù)庫(kù)的性能,有些時(shí)候甚至可以答應(yīng)移除某些索引而不會(huì)對(duì)性能有太大影響。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武陟县| 神农架林区| 司法| 冕宁县| 方正县| 新平| 扶风县| 长沙县| 安吉县| 牡丹江市| 雷州市| 河源市| 霍林郭勒市| 湘阴县| 筠连县| 封开县| 天长市| 汤阴县| 崇明县| 保定市| 石门县| 吉木乃县| 合江县| 灵石县| 高唐县| 咸阳市| 双柏县| 宁夏| 大方县| 白城市| 肥西县| 怀集县| 伊川县| 潞城市| 方正县| 鹤庆县| 泰顺县| 清涧县| 赤城县| 南宁市| 泾川县|