一炸渡、非聚集索引
1娜亿、非聚集索引
- 聚集索引是索引結(jié)構(gòu)和數(shù)據(jù)一起存放的索引。
類似于字典的正文蚌堵,當(dāng)我們根據(jù)拼音直接就能找到那個(gè)字买决。 - 非聚集索引:非聚集索引是索引結(jié)構(gòu)和數(shù)據(jù)分開存放的索引。
類似于根據(jù)偏旁部首找字吼畏,首先找到該字所在的地址督赤,再根據(jù)地址找到這個(gè)字的信息。
2泻蚊、存儲(chǔ)在數(shù)據(jù)頁中
- 也是存儲(chǔ)在頁中(PageType標(biāo)記為2的頁躲舌,叫索引頁)。
- 比如表T建立了一個(gè)非聚集索引Index_A性雄,那么表T有100條數(shù)據(jù)的話没卸,
那么索引Index_A也就有100條數(shù)據(jù)(準(zhǔn)確的說是100條葉子節(jié)點(diǎn)數(shù)據(jù),索引是B樹結(jié)構(gòu)秒旋,如果樹的高度大于0约计,那么就有根節(jié)點(diǎn)頁或中間節(jié)點(diǎn)頁數(shù)據(jù),這時(shí)索引數(shù)據(jù)就超過100條)迁筛,
如果表T還有非聚集索引Index_B煤蚌,那么Index_B也是至少100條數(shù)據(jù),所以索引建越多開銷越大。
3铺然、性能影響
- 更新索引字段俗孝、插入一條數(shù)據(jù)酒甸、刪除一條數(shù)據(jù)都會(huì)造成索引的維護(hù)從而造成性能的一定影響魄健。
在不同情況下,性能影響是不同的插勤。
比如當(dāng)你有一個(gè)聚集索引沽瘦,插入的數(shù)據(jù)又都是在末尾,這樣幾乎是不會(huì)造成數(shù)據(jù)移動(dòng)农尖,影響較形隽怠;
如果插入的數(shù)據(jù)在中間位置盛卡,一般會(huì)導(dǎo)致數(shù)據(jù)移動(dòng)助隧,而且可能產(chǎn)生分頁和頁碎片,影響就會(huì)稍大一點(diǎn)(如果插入到的中間頁有足夠的剩余空間容納插入的數(shù)據(jù)滑沧,而且位置是在頁末并村,也是不會(huì)造成數(shù)據(jù)移動(dòng))