B+樹的組織圖

來源:互聯網
上載者:User

1、B+樹索引的總體結構
① B+樹索引是一個多級索引,但是其結構不同於多級順序索引;
② B+樹索引採用平衡樹結構,即每個葉結點到根的路徑長度都相同;
③ 每個非葉結點有到n個子女,n對特定的樹是固定的;
④ B+樹的所有結點結構都相同,它最多包含n-1個搜尋碼值K1、K2、…、Kn-1,以及n個指標P1、P2、…、Pn,每個結點中的搜尋碼值按次序存放,即如果i<j,那麼Ki<Kj,如圖8-3-1所示。

圖8-3-1:B+樹的結點結構
2、B+樹索引的葉結點
① 指標Pi(i=1,2,…,n-1)指向具有搜尋碼值Ki的一個檔案記錄或一個指標(儲存)桶,桶中的每個指標指向具有搜尋碼值Ki的一個檔案記錄。指標桶只在檔案不按搜尋碼順序實體儲存體時才使用。指標Pn具有特殊的作用;
② 每個葉結點最多可有n-1個搜尋碼值,最少也要有個搜尋碼值。各個葉結點中搜尋碼值的範圍互不相交。要使B+樹索引成為稠密索引,資料檔案中的各搜尋碼值都必須出現在某個葉結點中且只能出現一次;
③ 由於各葉結點按照所含的搜尋碼值有一個線性順序,所以就可以利用各個葉結點的指標Pn將葉結點按搜尋碼順序連結在一起。這種排序能夠高效地對檔案進行順序處理,而B+樹索引的其他結構能夠高效地對檔案進行隨機處理,如圖8-3-2所示。
圖8-3-2:B+樹索引的葉結點結構樣本
3、B+樹索引的非葉結點
① B+樹索引的非葉結點形成葉結點上的一個多級(稀疏)索引;
② 非葉結點的結構和葉結點的結構相同,即含有能夠儲存n-1個搜尋碼值和n個指標的儲存單元的資料結構。只不過非葉結點中的所有指標都指向樹中的結點;
③ 如果一個非葉結點有m個指標,則≤m≤n。若m<n,則非葉結點中指標Pm之後的所有空閑空間作為預留空間,與葉結點的區別在於結點的最後一個指標Pm和Pn的位置與指向不同,如圖8-3-3所示;
圖8-3-3:B+樹索引的非葉結點結構
④ 在一個含有m個指標的非葉結點中,指標Pi(i=2,…,m-1)指向一棵子樹,該子樹的所有結點的搜尋碼值大於等於Ki-1而小於Ki。指標Pm指向子樹中所含搜尋碼值大於等於Km-1的那一部分,而指標P1指向子樹中所含搜尋碼值小於K1的那一部分,如圖8-3-4所示。
圖8-3-4:B+樹索引的非葉結點中指標Pi的指向
4、B+樹索引的根結點
① 根結點的結構也與葉結點相同;
② 根結點包含的指標數可以小於。但是,除非整棵樹只有一個結點,否則根結點必須至少包含兩個指標。圖8-3-5給出一個B+樹結構的。
圖8-3-5:account關係的B+樹索引結構

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.