接續前兩天簡單地介紹 B-Tree & B+-Tree,今天要來介紹本次競賽的主軸 Learned Index 嚕!!!
什麼是Learned Index?
直接用以下兩張圖解釋(一張圖勝過千言萬語! 因為自己不太會解釋XD):
我們前幾天介紹過,傳統的索引結構,對於排序好的資料(Sorted Array),主要使用B+-Tree,已設計好的樹狀結構儲存資料,其實可以把它看成,利用B+-Tree索引結構我們就能找到在Array中的資料,如左圖所示。
那 Learned Index 呢?
Learned Index 則是使用機器學習或是深度學習的 Model 取代傳統的 B+-Tree 當作索引結構,如右圖所示 。也就是說,Learned Index 使用 Model 來預測資料的位置,再換句話說,Learned Index使用Model來預測Key在Array中的位置。
聽起來....真的很酷 XD
以我的智商我永遠也想不到可以使用 Model 當作索引結構....現在大部分的機器學習、深度學習的應用幾乎都是應用於圖像、聲音這兩大主題,Kraska et al. 這篇 paper 一提出來,直接wow! wow! wow! 三聲,真的是太新穎了ㄅ! 顛覆我們的三觀 XD
Learned Index直翻成中文為 學習索引 ,那...是學習甚麼呢 ?
我們明天再說~~掰噗 !