iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
AI & Data

索引結構與機器學習的相遇系列 第 3

Day 3 - 簡單介紹一下 B+-Tree

  • 分享至 

  • xImage
  •  

上一篇介紹了B-Tree,今天一樣要來簡單地介紹一下B+-Tree嚕~

B+-Tree

B+-Tree跟B-Tree不一樣的點在於.... 多了一個+號

開玩笑低,不一樣的地方在於,B+-Tree的所有資料都儲存在葉子節點,而且,每個葉子節點會指向下一個葉子節點。

將所有資料存在葉子節點,一次快取的Keys就更多,減少 I/O讀寫次數,更快地找到資料XD

每個葉子指向下個葉子節點,可以對特定範圍的Key值進作查詢(範圍查詢更有效率呦 !)。

現在大部分的資料庫系統底層都使用B+-Tree為索引結構(e.g. MySQL, PostgreSQL),有些甚至還針對B+-Tree進行優化喔~

  • B+-Tree 架構圖(用心良苦所繪製完成的,就算我解釋得不好,架構圖應該還算過關吧XD)

https://ithelp.ithome.com.tw/upload/images/20200918/20129198ROXtW7B9se.png

資料全部都存在葉子節點,

下面為參考的網址資料,對於B+-Tree有更詳細地介紹,包括讀寫的操作...等等。

參考資料

https://www.itread01.com/content/1545700882.html

https://blog.niclin.tw/2018/06/18/%E4%BB%80%E9%BA%BC%E6%98%AF-b--tree/

https://mp.weixin.qq.com/s/cK_GIhCuGoUwJpDpoaETxw


上一篇
Day 2 - 簡單介紹一下B-Tree
下一篇
Day 4 - Learned Index
系列文
索引結構與機器學習的相遇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言