久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mysql中關(guān)于覆蓋索引的知識(shí)點(diǎn)總結(jié)

瀏覽:5日期:2023-10-12 11:27:41

如果一個(gè)索引包含(或覆蓋)所有需要查詢(xún)的字段的值,稱(chēng)為‘覆蓋索引’。

覆蓋索引是一種非常強(qiáng)大的工具,能大大提高查詢(xún)性能,只需要讀取索引而不需要讀取數(shù)據(jù),有以下優(yōu)點(diǎn):

1、索引項(xiàng)通常比記錄要小,所以MySQL訪(fǎng)問(wèn)更少的數(shù)據(jù)。

2、索引都按值得大小存儲(chǔ),相對(duì)于隨機(jī)訪(fǎng)問(wèn)記錄,需要更少的I/O。

3、數(shù)據(jù)引擎能更好的緩存索引,比如MyISAM只緩存索引。

4、覆蓋索引對(duì)InnoDB尤其有用,因?yàn)镮nnoDB使用聚集索引組織數(shù)據(jù),如果二級(jí)索引包含查詢(xún)所需的數(shù)據(jù),就不再需要在聚集索引中查找了。

限制:

1、覆蓋索引也并不適用于任意的索引類(lèi)型,索引必須存儲(chǔ)列的值。

2、Hash和full-text索引不存儲(chǔ)值,因此MySQL只能使用BTree。

3、不同的存儲(chǔ)引擎實(shí)現(xiàn)覆蓋索引都是不同的,并不是所有的存儲(chǔ)引擎都支持覆蓋索引。

4、如果要使用覆蓋索引,一定要注意SELECT列表值取出需要的列,不可以SELECT * ,因?yàn)槿绻麑⑺凶侄我黄鹱鏊饕龝?huì)導(dǎo)致索引文件過(guò)大,查詢(xún)性能下降。

知識(shí)點(diǎn)擴(kuò)充:

1、兩遍掃描算法(Two passes)

實(shí)現(xiàn)方式是先將須要排序的字段和可以直接定位到相關(guān)行數(shù)據(jù)的指針信息取出,然后在設(shè)定的內(nèi)存(通過(guò)參數(shù)sort_buffer_size設(shè)定)中進(jìn)行排序,完成排序之后再次通過(guò)行指針信息取出所需的Columns

注:該算法是4.1之前采用的算法,它需要兩次訪(fǎng)問(wèn)數(shù)據(jù),尤其是第二次讀取操作會(huì)導(dǎo)致大量的隨機(jī)I/O操作。另一方面,內(nèi)存開(kāi)銷(xiāo)較小

2、 一次掃描算法(single pass)

該算法一次性將所需的Columns全部取出,在內(nèi)存中排序后直接將結(jié)果輸出注: 從 MySQL 4.1 版本開(kāi)始使用該算法。它減少了I/O的次數(shù),效率較高,但是內(nèi)存開(kāi)銷(xiāo)也較大。如果我們將并不需要的Columns也取出來(lái),就會(huì)極大地浪費(fèi)排序過(guò)程所需要 的內(nèi)存。在 MySQL 4.1 之后的版本中,可以通過(guò)設(shè)置 max_length_for_sort_data 參數(shù)來(lái)控制 MySQL 選擇第一種排序算法還是第二種。當(dāng)取出的所有大字段總大小大于 max_length_for_sort_data 的設(shè)置時(shí),MySQL 就會(huì)選擇使用第一種排序算法,反之,則會(huì)選擇第二種。為了盡可能地提高排序性能,我們自然更希望使用第二種排序算法,所以在 Query 中僅僅取出需要的 Columns 是非常有必要的。

當(dāng)對(duì)連接操作進(jìn)行排序時(shí),如果ORDER BY僅僅引用第一個(gè)表的列,MySQL對(duì)該表進(jìn)行filesort操作,然后進(jìn)行連接處理,此時(shí),EXPLAIN輸出“Using filesort”;否則,MySQL必須將查詢(xún)的結(jié)果集生成一個(gè)臨時(shí)表,在連接完成之后進(jìn)行filesort操作,此時(shí),EXPLAIN輸出 “Using temporary;Using filesort”

以上就是mysql中關(guān)于覆蓋索引的知識(shí)點(diǎn)總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于mysql中什么是覆蓋索引的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 蜜桃视频成人m3u8 | 日韩1区3区4区第一页 | 不卡视频一区二区 | 啪啪的网站 | 久久国产精品免费一区二区三区 | 久久久亚洲综合 | 欧美日韩视频在线播放 | 日韩久久一区二区 | 欧美不卡一区二区三区 | 久久青青操 | 午夜精品一区二区三区在线视频 | 综合色婷婷一区二区亚洲欧美国产 | 天天舔日日干 | 亚洲国产成人久久一区二区三区 | 91中文字幕网 | 成人高清在线 | 国产精品久久九九 | 99久久婷婷国产综合亚洲 | 亚洲人成在线观看 | 91视视频在线观看入口直接观看 | 看真人视频a级毛片 | 国产黄色av | 国产高清精品一区二区三区 | 亚洲男人网 | 亚洲日韩成人 | 日韩国产精品一区二区三区 | 国产精品成人3p一区二区三区 | 中文字幕不卡在线 | 欧美精品在线视频 | 一级毛片在线看aaaa | 999久久久国产999久久久 | 欧美日韩精品久久久 | 北条麻妃一区二区免费播放 | 午夜毛片 | 欧美日韩一区二区三区 | 亚洲一级毛片 | 欧美日韩中文字幕在线 | 我要看a级毛片 | 色图综合 | 日韩免费视频 | 男女视频一区二区 |