亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mysql?索引?BTree?與?B+Tree?的區(qū)別(面試)

 更新時(shí)間:2022年09月27日 09:37:42   作者:阿常囈語  
這篇文章主要介紹了Mysql索引BTree與B+Tree的區(qū)別,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

前言

? 說起面試,很多同學(xué)都經(jīng)歷過,但是 面試中 可能會(huì)遇到各種問題,MySQL 的問題 也是非常多,最近我也經(jīng)常面試,也希望問一些數(shù)據(jù)庫一些偏理論和底層的東西,來考察同學(xué)對(duì)技術(shù)的理解程度, 之后 我會(huì)更新這個(gè)系列的 面試。

主要更新的內(nèi)容主要是: 我經(jīng)常面試 一些面試者 喜歡問的一些問題,這是 第一篇 就更新 數(shù)據(jù)庫相關(guān)的吧

BTree 基本概念

B樹。B樹被稱為自平衡樹,因?yàn)樗墓?jié)點(diǎn)是按順序遍歷排序的。在B樹中,一個(gè)節(jié)點(diǎn)可以有兩個(gè)以上的孩子。而且高度在每次更新時(shí)都會(huì)自動(dòng)調(diào)整。在B樹中,數(shù)據(jù)是按照特定的順序排序的,最低值在左邊,最高值在右邊。在B樹中插入數(shù)據(jù)或鍵,比二叉樹更復(fù)雜。

Btree 的特點(diǎn):

  • 節(jié)點(diǎn)排序,每個(gè)節(jié)點(diǎn) 可以存放多個(gè)元素,多個(gè)元素也是排序的
  • 每個(gè)節(jié)點(diǎn) key 和數(shù)據(jù)在一起
  • B樹的所有葉子節(jié)點(diǎn)必須在同一級(jí)別
  • 在B樹的葉子節(jié)點(diǎn)上面,不應(yīng)該有空的子樹
  • 在關(guān)鍵字全集內(nèi)做一次查找,性能逼近 二分查找的算法
  • 任何關(guān)鍵字出現(xiàn)且只出現(xiàn)在一個(gè)節(jié)點(diǎn)中
  • 搜索有可能在非葉子節(jié)點(diǎn)結(jié)束,因?yàn)閿?shù)據(jù)和索引在一起存儲(chǔ)的

來一個(gè) max Degree =3 的一個(gè)圖

在線生成BTree 的圖形

在這里插入圖片描述

B+Tree 的特點(diǎn)

B+tree 多路平衡查找樹:

  • B+Tree 擁有BTree 的所有的結(jié)構(gòu)特點(diǎn)
  • B+Tree 的非葉子節(jié)點(diǎn)不存儲(chǔ)數(shù)據(jù),只存儲(chǔ)關(guān)鍵字,葉子節(jié)點(diǎn)才存儲(chǔ)了所有的數(shù)據(jù),并且是排好序的
  • B+Tree 葉子節(jié)點(diǎn)是通過指針連接在一起的(雙向連接), 這樣在范圍查詢中發(fā)揮作用
  • 相對(duì)于 Btree , B+tree 層級(jí)更低

B+Trees 特點(diǎn)如下:

圖形生成地址

在這里插入圖片描述

查找過程的區(qū)別

兩種索引 查找過程的區(qū)別:

B+tree 需要找到葉子節(jié)點(diǎn) 才能找到數(shù)據(jù), 而Btree 可能不需要找到葉子節(jié)點(diǎn) 就可以找到數(shù)據(jù)

B+Tree索引 如何提高索引的查詢性能 ?

  • 找得快, 葉子節(jié)點(diǎn)雙向指針
  • 一次IO 操作,找更多的數(shù)據(jù),減少IO 操作,節(jié)點(diǎn)不存數(shù)據(jù),只存關(guān)鍵字,這樣可以存儲(chǔ)更多索引的信息,B+tree 層級(jí)會(huì)降低

為啥 B+Tree 會(huì)比 BTree 高度要低呢?

頁(Page)是Mysql中磁盤和內(nèi)存交換的基本單位, 也是Mysql管理存儲(chǔ)空間的基本單位。

Page 是InnoDB存儲(chǔ)引擎磁盤管理的最小單位,每個(gè)頁默認(rèn)16KB,innodb_page_size 可以通過這個(gè)參數(shù)進(jìn)行修改

B+Tree 中的非葉子節(jié)點(diǎn) 不存儲(chǔ)數(shù)據(jù), 只存關(guān)鍵字,所以一個(gè)Page 中可以容納更多的索引項(xiàng), 一是可以降低樹的高度,二是 在一個(gè)內(nèi)部節(jié)點(diǎn)中可以定位更多的葉子節(jié)點(diǎn)。

到此這篇關(guān)于Mysql 索引 BTree 與 B+Tree 的區(qū)別(面試)的文章就介紹到這了,更多相關(guān)Mysql BTree與B+Tre內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL運(yùn)行在docker容器性能損失解析

    MySQL運(yùn)行在docker容器性能損失解析

    這篇文章主要為大家介紹了MySQL運(yùn)行在docker容器中的性能損失解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • MySQL的事務(wù)特性概念梳理總結(jié)

    MySQL的事務(wù)特性概念梳理總結(jié)

    這篇文章主要介紹了MySQL的事務(wù)特性概念梳理總結(jié),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • MySQL將多條數(shù)據(jù)合并成一條的完整示例

    MySQL將多條數(shù)據(jù)合并成一條的完整示例

    我們?cè)谑褂胢ysql的時(shí)候常會(huì)遇到合并的需求,下面這篇文章主要給大家介紹了關(guān)于MySQL將多條數(shù)據(jù)合并成一條的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • CMS不要讓MySQL為你流淚

    CMS不要讓MySQL為你流淚

    MySQL是中小型網(wǎng)站普遍使用的數(shù)據(jù)庫之一,然而,很多人并不清楚MySQL到底能支持多大的數(shù)據(jù)量,再加上某些國內(nèi)CMS廠商把數(shù)據(jù)承載量的責(zé)任推給它,導(dǎo)致很多不了解MySQL的站長對(duì)它產(chǎn)生了很多誤解
    2008-12-12
  • Navicat Premium15連接云服務(wù)器中的數(shù)據(jù)庫問題及遇到坑

    Navicat Premium15連接云服務(wù)器中的數(shù)據(jù)庫問題及遇到坑

    這篇文章主要介紹了Navicat Premium15連接云服務(wù)器中的數(shù)據(jù)庫問題及遇到坑,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • mysql把一段數(shù)據(jù)變成一個(gè)臨時(shí)表

    mysql把一段數(shù)據(jù)變成一個(gè)臨時(shí)表

    這篇文章主要介紹了mysql把一段數(shù)據(jù)變成一個(gè)臨時(shí)表,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • MySQL 5.7安裝后默認(rèn)登錄密碼的查看方法

    MySQL 5.7安裝后默認(rèn)登錄密碼的查看方法

    許多朋友安裝MySQL 5.7之后不知道默認(rèn)登錄密碼在哪里查看,本文小編將通過代碼示例和圖文結(jié)合的方式給大家介紹MySQL 5.7安裝后默認(rèn)登錄密碼的查看方法,需要的朋友可以參考下
    2023-12-12
  • 基于unique與primary約束的區(qū)別分析

    基于unique與primary約束的區(qū)別分析

    本篇文章介紹了unique與primary約束的區(qū)別分析。需要的朋友參考下
    2013-04-04
  • 使用java處理字符串公式運(yùn)算的方法

    使用java處理字符串公式運(yùn)算的方法

    本篇文章介紹了,使用java處理字符串公式運(yùn)算的方法。需要的朋友參考下
    2013-04-04
  • MySQL之解決字符串?dāng)?shù)字的排序失效問題

    MySQL之解決字符串?dāng)?shù)字的排序失效問題

    這篇文章主要介紹了MySQL之解決字符串?dāng)?shù)字的排序失效問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評(píng)論