一、索引結(jié)構(gòu)
從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。創(chuàng)新互聯(lián)公司將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。在聚集索引上建立非聚集索引,在日常應(yīng)用中經(jīng)常發(fā)生。
?xml:namespace>
二、實(shí)驗(yàn)[三E]
繼續(xù)使用上一篇文章中創(chuàng)建的唯一聚集索引,在此基礎(chǔ)之上新建一個非聚集索引。
1. 創(chuàng)建非聚集索引
CREATE INDEX IX_person1_UserIDModifyDate ON person1 (UserID,ModifyDate) |
2. 查看索引占用的空間
DBCC SHOWCONTIG ('person1') WITH ALL_INDEXES |
結(jié)果如下:
DBCC SHOWCONTIG 正在掃描 'person1' 表... 表: 'person1' (389576426);索引 ID: 1,數(shù)據(jù)庫 ID: 8 已執(zhí)行 TABLE 級別的掃描。 - 掃描頁數(shù)................................: 4000 - 掃描區(qū)數(shù)..............................: 500 - 區(qū)切換次數(shù)..............................: 499 - 每個區(qū)的平均頁數(shù)........................: 8.0 - 掃描密度 [最佳計數(shù):實(shí)際計數(shù)].......: 100.00% [500:500] - 邏輯掃描碎片 ..................: 0.03% - 區(qū)掃描碎片 ..................: 2.20% - 每頁的平均可用字節(jié)數(shù).....................: 76.0 - 平均頁密度(滿).....................: 99.06% DBCC SHOWCONTIG 正在掃描 'person1' 表... 已執(zhí)行 LEAF 級別的掃描。 - 掃描頁數(shù)................................: 179 - 掃描區(qū)數(shù)..............................: 23 - 區(qū)切換次數(shù)..............................: 22 - 每個區(qū)的平均頁數(shù)........................: 7.8 - 掃描密度 [最佳計數(shù):實(shí)際計數(shù)].......: 100.00% [23:23] - 邏輯掃描碎片 ..................: 0.00% - 區(qū)掃描碎片 ..................: 4.35% - 每頁的平均可用字節(jié)數(shù).....................: 51.3 - 平均頁密度(滿).....................: 99.37% DBCC 執(zhí)行完畢。如果 DBCC 輸出了錯誤信息,請與系統(tǒng)管理員聯(lián)系。 |
3. 查看索引的層次
對于建立在聚集索引上的非聚集索引,
SELECT index_depth, index_level, record_count, page_count, min_record_size_in_bytes as 'MinLen', max_record_size_in_bytes as 'MaxLen', avg_record_size_in_bytes as 'AvgLen', convert(decimal(6,2),avg_page_space_used_in_percent) as 'PageDensity' FROM sys.dm_db_index_physical_stats (8, OBJECT_ID('person1'),2,NULL,'DETAILED') |
結(jié)果如下表所示:
index _depth | Index _level | Record _count | Page _count | MinLen | MaxLen | AvgLen | PageDensity |
2 | 0 | 80000 | 179 | 16 | 16 | 16 | 99.36 |
2 | 1 | 179 | 1 | 22 | 22 | 22 | 53.05 |
根據(jù)上表的數(shù)據(jù),可以發(fā)現(xiàn)它與堆上的非聚集索引的數(shù)據(jù)是一樣的。該索引共有2層。level=0 是葉級,它有179個頁面,指向底層的聚集索引的根頁;level=1 是這個非聚集索引的根頁,它只有1個頁面,指向葉級的179個索引頁。
三、比較三類索引占用的頁數(shù)
比較前面幾個實(shí)驗(yàn),各類索引占用的頁數(shù)如下:
1. 堆
在實(shí)驗(yàn)[三A]中,堆是最原始的結(jié)構(gòu),index_id = 0,存儲了 80000 條記錄,占用了4000 頁。
2. 聚集索引
聚集索引的 index_id = 1。
唯一聚集索引在葉級將數(shù)據(jù)頁重新進(jìn)行物理排序,不會額外增加數(shù)據(jù)頁。由于索引寬度固定,因此在根級只占用了1個頁,中間級占用了7個頁。一共占用了1+7+4000=4008 頁。與堆相比,非葉級的索引頁多了8頁。
非唯一聚集索引需要在后臺保持?jǐn)?shù)據(jù)的唯一,因此在后臺增加了一個 4 字節(jié)的uniqueifier 列,有可能需要增加額外的數(shù)據(jù)頁。在前面的案例中,非唯一聚集索引使用了4009頁,也就是多了9個頁。同時由于索引寬度的開銷較大,中間級占用了10個頁,加上根級占用了1個頁,一共占用了1+10+4009=4020 頁。與堆相比,葉級索引頁(數(shù)據(jù)頁)多了9頁,非葉級的索引頁多了11頁。
3. 非聚集索引
堆上的非聚集索引與聚集索引上的非聚集索引,index_id >= 2,占用了相同數(shù)量的索引頁面,頁面數(shù)量為:179+1=180 頁。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
分享名稱:三、索引優(yōu)化(3)聚集索引上的非聚集索引-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://jinyejixie.com/article4/dpchie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、定制網(wǎng)站、網(wǎng)站制作、自適應(yīng)網(wǎng)站、動態(tài)網(wǎng)站、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)