您好,登錄后才能下訂單哦!
這篇文章給大家介紹mysql中B+Tree和B-Tree有什么區別,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
1、B-樹的關鍵詞和記錄放在一起,葉節點可以看作是外部節點,不包含任何信息;B+樹的非葉節點只有關鍵詞和指向下一個節點的索引,記錄只放在葉節點上。
2、在B-樹中,越靠近根節點的記錄查找時間越快,只要找到關鍵字就可以確定記錄的存在;而B+樹中每一個記錄的查找時間基本相同,都需要從根節點到葉節點,并且在葉節點中再比較一下關鍵字。在這一點上,B-樹的性能似乎比B+樹好,
而在實際應用中,B+樹的性能則更好。由于B+樹的非葉節點不存放實際數據,因此每一節點所能容納的元素數量比B-樹多,樹高比B-樹小,其優點是減少了磁盤的訪問次數。雖然B+樹找到記錄所需的比較次數比B-樹多,但一次磁盤訪問的時間相當于數百次內存比較的時間,所以實際上B+樹的性能可能會更好,而B+樹的葉節點也可以用指針連接在一起,方便順序遍歷(例如查看一個目錄下的所有文件,一次磁盤訪問的所有數據庫等),這也是B+樹的所有記錄系統使用的數據庫和文件。
3、B+樹的磁盤讀寫代價更低
B+樹的內部結點并沒有指向關鍵字具體信息的指針。因此其內部結點相對B-樹更小。
B+樹的查詢效率更加穩定。
關于mysql中B+Tree和B-Tree有什么區別就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。