mysql - index 索引概述
阿新 • • 發佈:2021-01-16
索引概述:
定義:索引(index)是幫助mysql高效獲取資料的資料結構(有序)。
解釋:在mysql中,除資料之外,資料庫同還維護滿足【特定查詢演算法】的資料結構,這些資料結構以某種方式引用(指向)資料,這樣就可以在資料結構上實現高階查詢演算法,這種資料結構就是索引。
如下圖所示:
左邊是資料表,一共2列7條資料,最左邊的是資料記錄的實體地址(注意:邏輯上相鄰的記錄,在磁碟上並不一定是物理相鄰的)。
為了加快Col2的查詢,可以維護一個右邊所示的`二叉查詢樹`:
- 每個節點分別包含:索引鍵值 && 物理指標(指向對應資料記錄的實體地址)
- 利用該二叉樹,就可以快速獲取到相應資料。
一般來說,索引本身也很大,不可能全部儲存在記憶體中,往往以索引檔案的形式,儲存在磁碟上;索引是資料庫中,提高效能的最常用的工具。