1. MySQL聚集索引 非聚集索引 聚簇索引 稀疏索引 稠密索引

        共 1005字,需瀏覽 3分鐘

         ·

        2021-03-27 00:50

        聚集索引

        聚集索引:指索引項的排序方式和表中數(shù)據(jù)記錄排序方式一致的索引
        也就是說聚集索引的順序就是數(shù)據(jù)的物理存儲順序。它會根據(jù)聚集索引鍵的順序來存儲表中的數(shù)據(jù),即對表的數(shù)據(jù)按索引鍵的順序進行排序,然后重新存儲到磁盤上。因為數(shù)據(jù)在物理存放時只能有一種排列方式,所以一個表只能有一個聚集索引。


        比如字典中,用‘拼音’查漢字,就是聚集索引。因為正文中字都是按照拼音排序的。而用‘偏旁部首’查漢字,就是非聚集索引,因為正文中的字并不是按照偏旁部首排序的,我們通過檢字表得到正文中的字在索引中的映射,然后通過映射找到所需要的字。

        聚集索引的使用場合為:
          a.查詢命令的回傳結(jié)果是以該字段為排序依據(jù)的;
          b.查詢的結(jié)果返回一個區(qū)間的值;
          c.查詢的結(jié)果返回某值相同的大量結(jié)果集。
        聚集索引會降低 insert,和update操作的性能,所以,是否使用聚集索引要全面衡量。


        非聚集索引

        非聚集索引:索引順序與物理存儲順序不同



        非聚集索引的使用場合為:
          a.查詢所獲數(shù)據(jù)量較少時;
          b.某字段中的數(shù)據(jù)的唯一性比較高時;

        非聚集索引必須是稠密索引


        聚簇索引

        聚簇索引并不是一種單獨的索引類型,而是一種數(shù)據(jù)存儲方式。術(shù)語“聚族”表示數(shù)據(jù)行和相鄰的鍵值緊湊的存儲在一起。因為無法同時把數(shù)據(jù)行放在兩個不同的地方,所以一個表只能有一個聚族索引。


        聚族索引的優(yōu)點
        可以把相關(guān)數(shù)據(jù)保存在一起。就好像在操場上戰(zhàn)隊,一個院系一個院系地站在一起,這樣要找到一個人,就先找到他的院系,然后在他的院系里找到他就行了,而不是把學(xué)校里的所有人都遍歷一遍

        數(shù)據(jù)訪問更快。聚族索引將索引和數(shù)據(jù)保存在同一個B-Tree中,因此從聚族索引中獲取數(shù)據(jù)通常比在非聚族索引中查找更快


        稠密索引

        稠密索引:每個索引鍵值都對應(yīng)有一個索引項


        稠密索引能夠比稀疏索引更快的定位一條記錄。但是,稀疏索引相比于稠密索引的優(yōu)點是:它所占空間更小,且插入和刪除時的維護開銷也小。


        稀疏索引

        稀疏索引:相對于稠密索引,稀疏索引只為某些搜索碼值建立索引記錄;在搜索時,找到其最大的搜索碼值小于或等于所查找記錄的搜索碼值的索引項,然后從該記錄開始向后順序查詢直到找到為止。


        瀏覽 66
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 日韩无码插逼 | 中文字幕在线成人 | 久操电影网 | 成人无码A级毛片免费播放 | 欧美交换配乱婬粗大嫩模 |