<fieldset id="gy0wc"></fieldset>
<fieldset id="gy0wc"></fieldset>
  • <ul id="gy0wc"><sup id="gy0wc"></sup></ul>
  • 當(dāng)前位置:首頁(yè) > 行業(yè)知識(shí) > 綜合

    索引是什么意思

    關(guān)注:23 發(fā)布時(shí)間:2022-02-08 19:25:01

    相信很多程序員朋友都很熟悉數(shù)據(jù)索引。比較常見(jiàn)的索引是b樹(shù)索引,可以加快數(shù)據(jù)庫(kù)的檢索速度,但是會(huì)降低添加、修改、刪除操作的速度,一些寫(xiě)錯(cuò)會(huì)導(dǎo)致索引失效。

    但是如果問(wèn),為什么使用索引后查詢(xún)更快?b樹(shù)指數(shù)的原理是什么?這個(gè)時(shí)候很多人可能還不知道。我就以mysql innodb引擎為例,談?wù)刡樹(shù)索引的原理。

    索引基礎(chǔ)知識(shí)

    mysql的基本存儲(chǔ)結(jié)構(gòu)是page,大概是這樣的:

    在這里,我們需要了解以下幾點(diǎn)(非常重要):

    當(dāng)我們使用mysql innodb引擎創(chuàng)建一個(gè)表時(shí),主鍵只能有一個(gè);如果我們不明確指定介于,mysql會(huì)自動(dòng)生成一個(gè)隱式字段作為主鍵。

    聚集索引:用主鍵創(chuàng)建的索引;聚集索引的葉節(jié)點(diǎn)將數(shù)據(jù)存儲(chǔ)在表中;

    非聚集索引:由非主鍵創(chuàng)建的索引;非聚集索引在葉節(jié)點(diǎn)存儲(chǔ)主鍵和索引列。使用非聚集索引查詢(xún)數(shù)據(jù)會(huì)查詢(xún)?nèi)~子上的主鍵,然后根據(jù)主鍵查找數(shù)據(jù)(這個(gè)過(guò)程稱(chēng)為返回表)。

    頁(yè)面與頁(yè)面之間以及頁(yè)面與數(shù)據(jù)之間的關(guān)系

    我們用聚集索引來(lái)解釋?zhuān)?yè)面和頁(yè)面之間,以及頁(yè)面和數(shù)據(jù)之間的關(guān)系如下:

    數(shù)據(jù)頁(yè)之間形成雙向鏈表。

    每個(gè)數(shù)據(jù)頁(yè)中的記錄都是單向鏈表;

    每個(gè)數(shù)據(jù)頁(yè)根據(jù)內(nèi)部記錄生成一個(gè)頁(yè)面目錄。如果是主鍵,可以通過(guò)二分法在頁(yè)面目錄中快速定位;

    如果我們按照一個(gè)非主鍵、非索引的列進(jìn)行查詢(xún),需要遍歷雙向鏈表才能找到頁(yè)面;遍歷頁(yè)面中的單向鏈表;如果表中的數(shù)據(jù)很大,這樣的查詢(xún)會(huì)很慢。

    二叉樹(shù)索引的原理

    我們先來(lái)看看b樹(shù)索引是什么樣子的(以集群/主鍵索引為例):

    如果我們此時(shí)要查詢(xún)id=16的數(shù)據(jù):

    查詢(xún)page -1,發(fā)現(xiàn)page -2存儲(chǔ)的數(shù)據(jù)小于30;

    查詢(xún)第2頁(yè),發(fā)現(xiàn)第5頁(yè)存儲(chǔ)了10~20個(gè)數(shù)據(jù);

    查詢(xún)第5頁(yè),找到id=16的數(shù)據(jù)。

    顯然,在不使用索引的情況下,需要遍歷雙向鏈表來(lái)定位對(duì)應(yīng)的頁(yè)面,而有了索引,就可以通過(guò)層層“目錄”來(lái)定位對(duì)應(yīng)的頁(yè)面。

    為什么b樹(shù)索引降低了添加、修改和刪除的速度

    b樹(shù)是一棵平衡的樹(shù)。如果您添加、修改或刪除此樹(shù),它將破壞其原始結(jié)構(gòu)。

    當(dāng)我們添加、修改和刪除數(shù)據(jù)時(shí),我們需要花費(fèi)額外的時(shí)間來(lái)維護(hù)索引;

    由于這些額外的開(kāi)銷(xiāo),索引會(huì)降低添加、修改和刪除的速度。

    思考考試問(wèn)題,歡迎留言討論

    現(xiàn)在你明白b樹(shù)指數(shù)的原理了嗎?

    比較后,留下一個(gè)深思熟慮的問(wèn)題:為什么建議使用自增長(zhǎng)主鍵作為索引?,你可以在你的信息中寫(xiě)下你的答案。

    搜索引擎

    猜你喜歡

    • 4g網(wǎng)速最快的apn接入點(diǎn)

      4g網(wǎng)速最快的apn接入點(diǎn)72人支持

      目前5g手機(jī)逐漸普及,但是我們發(fā)現(xiàn)問(wèn)題了嗎?我們的4g手機(jī)網(wǎng)絡(luò)已經(jīng)變慢,變得不穩(wěn)定。原因是網(wǎng)上眾說(shuō)紛紜。這里就不深究了。今天我就教你怎么解決這個(gè)問(wèn)題。事實(shí)上,我們只需要簡(jiǎn)單…

    • 天貓sku最多能放多少?刪除和修改的方法

      天貓sku最多能放多少?刪除和修改的方法34人支持

      要說(shuō)哪個(gè)logo平臺(tái)最能代表電子商務(wù)的發(fā)展,那就是淘寶。淘寶上經(jīng)營(yíng)店鋪的商家很多,淘寶上購(gòu)物的用戶(hù)也很多。今天要回答的問(wèn)題是,天貓如何刪除sku?如果要?jiǎng)h除sku庫(kù)存數(shù)量,可以直接…

    • 最掙錢(qián)沒(méi)人干的行業(yè)

      最掙錢(qián)沒(méi)人干的行業(yè)57人支持

      平時(shí)見(jiàn)面的普通人比朝九晚五的上班族收入高。1.年前回家,給城里空蕩蕩的房子貼對(duì)聯(lián)。我忘記帶鑰匙了。開(kāi)鎖的哥哥,開(kāi)鎖50,收了50塊。他每天開(kāi)30把左右的鎖,還不算他安裝修理鎖的…

    • 怎么推廣網(wǎng)上商城

      怎么推廣網(wǎng)上商城73人支持

      線(xiàn)下商家成立線(xiàn)上商城,不知道后期運(yùn)營(yíng)推廣怎么辦。此時(shí)商家應(yīng)該怎么做才能正確經(jīng)營(yíng),吸引客戶(hù),增加銷(xiāo)量?今天我就用自己認(rèn)識(shí)的開(kāi)店制度分享一下我的經(jīng)驗(yàn)!1.利用好營(yíng)銷(xiāo)工具,擴(kuò)大客戶(hù)…

    • 最火的賣(mài)東西直播平臺(tái)

      最火的賣(mài)東西直播平臺(tái)3人支持

      如果2019年是直播爆發(fā)的第一年,那么2020年將是直播將商品全面普及的一年。在疫情的催化下,很多2019年還在觀望猶豫的企業(yè)和商家,被迫在2020年嘗試帶貨直播。淘寶數(shù)據(jù)顯示,2月份…

    • 淘寶積分有什么用

      淘寶積分有什么用93人支持

      淘寶積分怎么兌換?在淘寶商城購(gòu)物,不僅可以通過(guò)參與各種救濟(jì)活動(dòng)來(lái)減少資金支出,還可以通過(guò)完成每一筆訂單來(lái)獲得一定的淘寶積分。這類(lèi)積分不僅可以在購(gòu)物時(shí)套現(xiàn),還可以參與加幣…

    • 淘寶和京東哪個(gè)靠譜

      淘寶和京東哪個(gè)靠譜7人支持

      淘寶或者天貓個(gè)人用的比較多,因?yàn)樘詫毺熵埉a(chǎn)品種類(lèi)比較多。雖然有些東西是盜版或者高度仿制的,但是質(zhì)量也不錯(cuò),衣服鞋子都不錯(cuò)。小編主要利用京東購(gòu)買(mǎi)電子產(chǎn)品,他對(duì)京東的產(chǎn)品質(zhì)…

    • 送給想找工作的人!2019最后兩個(gè)月

      送給想找工作的人!2019最后兩個(gè)月98人支持

      年底了,還是會(huì)有人想找工作。有的人干脆放棄。其實(shí)我覺(jué)得不是。就算年底找工作,也要考慮抓緊時(shí)間努力。孟曉今年8月辭職,現(xiàn)在是11月,所以仍然很難找到工作。心里除了迷茫,就是深…

    • 抖音上熱門(mén)的訣竅

      抖音上熱門(mén)的訣竅44人支持

      我也想知道如何在tik tok受歡迎。所以在這里,我想和大家簡(jiǎn)單分享一下我這幾天研究的一些資料,僅供參考。寫(xiě)好所有賬號(hào)信息(點(diǎn)進(jìn)去讓大家知道你是做什么的,你的職位是什么,你主…

    • 男生個(gè)性簽名冷淡霸氣

      男生個(gè)性簽名冷淡霸氣54人支持

      1.夜局長(zhǎng)可能不是夢(mèng)多,但他一定想吃很多。2.別看了,是時(shí)候了。還好我是個(gè)小胖子,難過(guò)的時(shí)候能感覺(jué)到肚子。4.你夸的朋友圈叫甜甜圈。5.愛(ài)情不是我的一生,而是工作。6.喜歡一個(gè)人…

    • 共享經(jīng)濟(jì)向各領(lǐng)域加速滲透融合的大趨勢(shì)不會(huì)改變

      共享經(jīng)濟(jì)向各領(lǐng)域加速滲透融合的大趨勢(shì)不會(huì)改變35人支持

      分享的本質(zhì)是一個(gè)東西被很多人或者群體使用,目標(biāo)是提高一個(gè)東西的使用價(jià)值,但是這個(gè)東西的價(jià)值不會(huì)因?yàn)榉窒矶淖儭K赃@個(gè)東西必須是通用的,有些東西如果是獨(dú)占的就不能共享…

    • 京東金融安全可靠嗎?

      京東金融安全可靠嗎?36人支持

      我認(rèn)為這不是一個(gè)好主意。無(wú)論你有多少資產(chǎn),投資理財(cái)產(chǎn)品的資產(chǎn)配置多元化尤為重要。所有資產(chǎn)都配置在第三方金融平臺(tái)上,不符合“雞蛋不能放在一個(gè)籃子里”的投資原則。京東金…

    微商技巧

    主站蜘蛛池模板: 在线精品亚洲| 人妻精品久久久久中文字幕69 | 国产精品久久久天天影视| 亚洲国产精品一区二区第一页免| 久久免费精品视频| 99精品国产高清一区二区麻豆| 亚洲精品麻豆av| 欧美精品VIDEOSEX极品| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 亚洲国产成人精品无码久久久久久综合| 99九九精品免费视频观看| 国产99re在线观看只有精品| 人妻少妇乱子伦精品| 亚洲综合国产精品第一页| 久久精品亚洲精品国产欧美| 国产精品 91 第一页| 一本大道久久a久久精品综合| 国产精品嫩草视频永久网址| 国产精品无码a∨精品| 无码精品日韩中文字幕| 亚洲AV成人精品日韩一区18p| 久久精品人妻一区二区三区| 国精品产露脸自拍| 国产综合精品久久亚洲 | 精品无码日韩一区二区三区不卡 | 国产精品露脸国语对白| 亚洲精品国产电影| 久久久精品久久久久久| 久久精品成人| 精品亚洲视频在线观看| 久久93精品国产91久久综合| 国产亚洲精品影视在线产品| 国产精品成人h片在线| 国产成人精品亚洲精品| 99久久精品国产一区二区| 99久久精品免费看国产免费| A级毛片无码久久精品免费| 99久久精品免费看国产| 国产精品麻豆欧美日韩ww| 国产线视频精品免费观看视频| 精品国内自产拍在线观看|