Hash索引和B+树索引
生活随笔
收集整理的這篇文章主要介紹了
Hash索引和B+树索引
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? ? ?hash索引底層就是hash表,進行查找時,調用一次hash函數就可以獲取到相應的鍵值,之后進行回表查詢獲得實際數據.B+樹底層實現是多路平衡查找樹.對于每一次的查詢都是從根節點出發,查找到葉子節點方可以獲得所查鍵值,然后根據查詢判斷是否需要回表查詢數據。
? ? ? ??hash索引不支持使用索引進行排序
? ? ? ??hash索引不支持模糊查詢以及多列索引的最左前綴匹配
? ? ? ??hash索引任何時候都避免不了回表查詢數據,而B+樹在符合某些條件(聚簇索引,覆蓋索引等)的時候可以只通過索引完成查詢.
? ? ? ??hash索引雖然在等值查詢上較快,但是不穩定.性能不可預測,當某個鍵值存在大量重復的時候,發生hash碰撞,此時效率可能極差.而B+樹的查詢效率比較穩定,對于所有的查詢都是從根節點到葉子節點,且樹的高度較低
?
總結
以上是生活随笔為你收集整理的Hash索引和B+树索引的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工作中的代码规范
- 下一篇: 建立索引要考虑的因素