mysql Btree和Hash的區別

Mysql數據庫的索引有Btree和Hash。

B+tree,加強版多路平衡查找樹,一般採用Balance Tree結構存儲,數據都存儲在了葉子節點,檢索時需要從根節點到葉子節點;

Hash是進行Hash運算後進行查找,查找效率非常高,但只能用於等值查詢,不能用於範圍查找(<、>),另外如果遇到大量Hash值相同時,效率不一定比Btree效率高。Hash不能範圍查找是硬傷。

B+tree是Btree的加強版,Btree有的特性B+tree都有,B+ tree把數據都存儲在了葉子節點。

實際開發中,一般採用Btree索引的查詢效率就能滿足需求。

 

另外系統的文件管理也用到了基於Btree的索引查找。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章