版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、SQL聚集索引和非聚集索引微軟的SQLSERVER提供了兩種索引:聚集索引(clusteredindex,也稱聚類索引、簇集索引)和非聚集索引(nonclusteredindex,也稱非聚類索引、非簇集索引)……(一)深入淺出理解索引結(jié)構(gòu)實(shí)際上,您可以把索引理解為一種特殊的目錄。微軟的SQLSERVER提供了兩種索引:聚集索引(clusteredindex,也稱聚類索引、簇集索引)和非聚集索引(nonclusteredindex,也稱非
2、聚類索引、非簇集索引)。下面,我們舉例來說明一下聚集索引和非聚集索引的區(qū)別:其實(shí),我們的漢語字典的正文本身就是一個(gè)聚集索引。比如,我們要查“安”字,就會(huì)很自然地翻開字典的前幾頁,因?yàn)椤鞍病钡钠匆羰恰癮n”,而按照拼音排序漢字的字典是以英文字母“a”開頭并以“z”結(jié)尾的,那么“安”字就自然地排在字典的前部。如果您翻完了所有以“a”開頭的部分仍然找不到這個(gè)字,那么就說明您的字典中沒有這個(gè)字同樣的,如果查“張”字,那您也會(huì)將您的字典翻到最后部
3、分,因?yàn)椤皬垺钡钠匆羰恰皕hang”。也就是說,字典的正文部分本身就是一個(gè)目錄,您不需要再去查其他目錄來找到您需要找的內(nèi)容。我們把這種正文內(nèi)容本身就是一種按照一定規(guī)則排列的目錄稱為“聚集索引”。如果您認(rèn)識(shí)某個(gè)字,您可以快速地從自典中查到這個(gè)字。但您也可能會(huì)遇到您不認(rèn)識(shí)的字,不知道它的發(fā)音,這時(shí)候,您就不能按照剛才的方法找到您要查的字,而需要去根據(jù)“偏旁部首”查到您要找的字,然后根據(jù)這個(gè)字后的頁碼直接翻到某頁來找到您要找的字。但您結(jié)合“部
4、首目錄”和“檢字表”而查到的字的排序并不是真正的正文的排序方法,比如您查“張”字,我們可以看到在查部首之后的檢字表中“張”的頁碼是672頁,檢字表中“張”的上面是“馳”字,但頁碼卻是63頁,“張”的下面是“弩”字,頁面是390頁。很顯然,這些字并不是真正的分別位于“張”字的上下方,現(xiàn)在您看到的連續(xù)的“馳、張、弩”三字實(shí)際上就是他們在非聚集索引中的排序,是字典正文中的字在非聚集索引中的映射。我們可以通過這種方式來找到您所需要的字,但它需要
5、兩個(gè)過程,先找到目錄中的結(jié)果,然后再翻到您所需要的頁碼。我們把這種目錄純粹是目錄,正文純粹是正文的排序方式稱為“非聚集索引”。通過以上例子,我們可以理解到什么是“聚集索引”和“非聚集索引”。進(jìn)一步引申一下,我們可以很容易的理解:每個(gè)表只能有一個(gè)聚集索引,因?yàn)槟夸浿荒馨凑找环N方法進(jìn)行排序。(二)何時(shí)使用聚集索引或非聚集索引下面的表總結(jié)了何時(shí)使用聚集索引或非聚集索引(很重要)。動(dòng)作描述使用聚集索引使用非聚集索引外鍵列應(yīng)應(yīng)主鍵列應(yīng)應(yīng)列經(jīng)常被分
6、組排序(derby)應(yīng)應(yīng)制表掃描,提高查詢速度。如果您的辦公自動(dòng)化系統(tǒng)已經(jīng)建立的2年,那么您的首頁顯示速度理論上將是原來速度8倍,甚至更快。在這里之所以提到“理論上”三字,是因?yàn)槿绻木奂饕€是盲目地建在ID這個(gè)主鍵上時(shí),您的查詢速度是沒有這么高的,即使您在“日期”這個(gè)字段上建立的索引(非聚合索引)。下面我們就來看一下在1000萬條數(shù)據(jù)量的情況下各種查詢的速度表現(xiàn)(3個(gè)月內(nèi)的數(shù)據(jù)為25萬條):(1)僅在主鍵上建立聚集索引,并且不劃分
7、時(shí)間段:gidfariqineibuyonghutitlefromtgongwen用時(shí):128470毫秒(即:128秒)(2)在主鍵上建立聚集索引,在fariq上建立非聚集索引:gidfariqineibuyonghutitlefromTgongwenwherefariqidateadd(day90getdate())用時(shí):53763毫秒(54秒)(3)將聚合索引建立在日期列(fariqi)上:gidfariqineibuyonghut
8、itlefromTgongwenwherefariqidateadd(day90getdate())用時(shí):2423毫秒(2秒)雖然每條語句提取出來的都是25萬條數(shù)據(jù),各種情況的差異卻是巨大的,特別是將聚集索引建立在日期列時(shí)的差異。事實(shí)上,如果您的數(shù)據(jù)庫真的有1000萬容量的話,把主鍵建立在ID列上,就像以上的第1、2種情況,在網(wǎng)頁上的表現(xiàn)就是超時(shí),根本就無法顯示。這也是我摒棄ID列作為聚集索引的一個(gè)最重要的因素。得出以上速度的方法是:在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于時(shí)態(tài)Ctree聚集XML索引研究.pdf
- sql優(yōu)化-索引
- t-sql查詢高級(jí)—sql server索引中的碎片和填充因子
- sql server 查詢優(yōu)化(4)_索引的碎片與管理
- 索引
- 37852.基于點(diǎn)聚集系數(shù)和邊聚集系數(shù)的社區(qū)發(fā)現(xiàn)算法
- 屬性和索引器題目
- 主題搜索引擎的信息抽取和索引的研究.pdf
- 聚集查詢開發(fā)
- 特色資源聚集
- 索引原理
- 石油和天然氣的聚集
- 搜索引擎中的索引壓縮和查詢問題研究.pdf
- HBase非主鍵屬性索引方法及實(shí)現(xiàn).pdf
- 大規(guī)模非結(jié)構(gòu)數(shù)據(jù)索引和可視化的研究.pdf
- 公眾聚集場所消防
- 圖聚集算法與聚集圖質(zhì)量評(píng)價(jià)算法研究.pdf
- 中英文WWW探索引擎索引與查詢的研究和實(shí)現(xiàn).pdf
- 儀表索引表
- 涂料標(biāo)準(zhǔn)索引
評(píng)論
0/150
提交評(píng)論