日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

redis提高查询速度_面试小点-MySQL 的两种索引方法如何提高查询速度

發布時間:2024/8/5 数据库 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 redis提高查询速度_面试小点-MySQL 的两种索引方法如何提高查询速度 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MySQL索引的建立對于MySQL的高效運行是很重要的,索引可以大大提高MySQL的檢索速度。

索引方法

Mysql的索引方法有兩種,BTERR和HASH。

散列表(Hash Table)和B+Tree 都是一些常用的數據結構,再數據結構前篇中介紹過一些,關于散列表和樹的數據結構,后續也會在《數據結構后篇》中總結一下。

Hash

Hash索引如何提高查詢速度
Hash索引是將索引鍵通過Hash運算之后,將 Hash運算結果的 Hash 值和所對應的行指針信息存放于一個Hash表(可以是數組結構)中。 那很顯然采用Hash索引,在不考慮Hash沖突的情況下,通過Hash索引的可以一次定位數據,效率要比 BTree高很多。

Hash索引缺陷
Hash函數對索引健運算后,索引無法保證與索引健值大小一致,所以Hash索引有明顯缺陷,就是不支持范圍查詢;無法利用索引的數據來避免sql查詢的排序運算;對組合索引而言因為是組合健值進行Hash運算,所以無法使用部分索引讓組合索引生效。

Hash索引使用場景
那只需要做等值比較查詢,而不包含排序或范圍查詢的需求,都適合使用哈希索引

B+Tree

B樹(B-Tree)屬于多叉樹又名平衡多路查找樹,那B+數屬于改進版的B樹,

B樹跟B+樹的不同點

B+ 樹中的節點不存儲數據,只是索引,而B樹中的節點存儲數據 B 樹中的葉子節點并不需要鏈表來串聯。

B+Tree如何提高查詢速度
B+Tree利用平衡查找樹的有序性和高效遍歷性,和B+Tree構建的有限高度的多叉樹,通過IO次數的降低和查詢遍歷效率的提高,來提高查詢速度。

平衡查找樹的特點比較簡單,后續也會在《數據結構后篇》中總結一下

已區間查詢為例,B+Tree數據結構中只需要定位到區間起點值對應在樹中的結點,然后從這個結點開始,按照平衡查找樹的遍歷方法繼續遍歷,直到區間終點對應的結點為止,這期間遍歷得到的數據就是滿足區間值的數據。
類似于我們在《常用數據結構前篇》中提到的跳表的原理。利用局部數據,一層一層靠近查詢數據。

B+Tree索引使用場景
Mysql數據庫中使用最為頻繁的索引類型,不僅僅在 MySQL中是如此,實際上在其他的很多數據庫管理中BTREE索引也同樣是作為最主要的索引類型

總結

以上是生活随笔為你收集整理的redis提高查询速度_面试小点-MySQL 的两种索引方法如何提高查询速度的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。