黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Mysql索引優化面試題,大廠招聘在用

Mysql索引優化面試題,大廠招聘在用

更新時間:2022-12-09 16:24:22 來源:動力節點 瀏覽1487次

1.MySQL有哪幾種索引類型?

1、從存儲結構上來劃分:BTree索引(B-Tree或B+Tree索引),Hash索引,full-index全文索引,R-Tree索引。這里所描述的是索引存儲時保存的形式,

2、從應用層次來分:普通索引,唯一索引,復合索引。

普通索引:即一個索引只包含單個列,一個表可以有多個單列索引

唯一索引:索引列的值必須唯一,但允許有空值

復合索引:多列值組成一個索引,專門用于組合搜索,其效率大于索引合并

聚簇索引(聚集索引):并不是一種單獨的索引類型,而是一種數據存儲方式。具體細節取決于不同的實現,InnoDB的聚簇索引其實就是在同一個結構中保存了B-Tree索引(技術上來說是B+Tree)和數據行。

非聚簇索引: 不是聚簇索引,就是非聚簇索引

3、根據中數據的物理順序與鍵值的邏輯(索引)順序關系: 聚集索引,非聚集索引。

2. 說一說索引的底層實現?

Hash索引

基于哈希表實現,只有精確匹配索引所有列的查詢才有效,對于每一行數據,存儲引擎都會對所有的索引列計算一個哈希碼(hash code),并且Hash索引將所有的哈希碼存儲在索引中,同時在索引表中保存指向每個數據行的指針。

mysql索引優化面試題

B-Tree索引(MySQL使用B+Tree)

B-Tree能加快數據的訪問速度,因為存儲引擎不再需要進行全表掃描來獲取數據,數據分布在各個節點之中。

mysql索引優化面試題

B+Tree索引

是B-Tree的改進版本,同時也是數據庫索引索引所采用的存儲結構。數據都在葉子節點上,并且增加了順序訪問指針,每個葉子節點都指向相鄰的葉子節點的地址。相比B-Tree來說,進行范圍查找時只需要查找兩個節點,進行遍歷即可。而B-Tree需要獲取所有節點,相比之下B+Tree效率更高。

B+tree性質:

n棵子tree的節點包含n個關鍵字,不用來保存數據而是保存數據的索引。

所有的葉子結點中包含了全部關鍵字的信息,及指向含這些關鍵字記錄的指針,且葉子結點本身依關鍵字的大小自小而大順序鏈接。

所有的非終端結點可以看成是索引部分,結點中僅含其子樹中的最大(或最小)關鍵字。

B+ 樹中,數據對象的插入和刪除僅在葉節點上進行。

B+樹有2個頭指針,一個是樹的根節點,一個是最小關鍵碼的葉節點。

mysql索引優化面試題

3. 為什么索引結構默認使用B+Tree,而不是B-Tree,Hash,二叉樹,紅黑樹?

B-tree: 從兩個方面來回答

  • B+樹的磁盤讀寫代價更低:B+樹的內部節點并沒有指向關鍵字具體信息的指針,因此其內部節點相對B(B-)樹更小,如果把所有同一內部節點的關鍵字存放在同一盤塊中,那么盤塊所能容納的關鍵字數量也越多,一次性讀入內存的需要查找的關鍵字也就越多,相對IO讀寫次數就降低了。
  • 由于B+樹的數據都存儲在葉子結點中,分支結點均為索引,方便掃庫,只需要掃一遍葉子結點即可,但是B樹因為其分支結點同樣存儲著數據,我們要找到具體的數據,需要進行一次中序遍歷按序來掃,所以B+樹更加適合在區間查詢的情況,所以通常B+樹用于數據庫索引。

Hash:

  • 雖然可以快速定位,但是沒有順序,IO復雜度高;
  • 基于Hash表實現,只有Memory存儲引擎顯式支持哈希索引 ;
  • 適合等值查詢,如=、in()、<=>,不支持范圍查詢 ;
  • 因為不是按照索引值順序存儲的,就不能像B+Tree索引一樣利用索引完成排序 ;

Hash索引在查詢等值時非常快 ;

因為Hash索引始終索引的所有列的全部內容,所以不支持部分索引列的匹配查找 ;

如果有大量重復鍵值得情況下,哈希索引的效率會很低,因為存在哈希碰撞問題 。

二叉樹: 樹的高度不均勻,不能自平衡,查找效率跟數據有關(樹的高度),并且IO代價高。

紅黑樹: 樹的高度隨著數據量增加而增加,IO代價高。

以上就是“Mysql索引優化面試題,大廠招聘在用”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 一本大道久东京 | 99精品欧美| 一区二区三区中文字幕 | 国内精品视频一区 | 国产一级毛片免 | xxxx日本69xxxxx| 亚洲青青草 | 国产在线精品一区二区不卡 | 欧美亚洲激情 | 亚洲综合网国产福利精品一区 | 男女爽爽无遮挡午夜视频在线观看 | 噜噜噜狠狠夜夜躁精品 | 天天做天天爱天天怼 | 911精品国产亚洲日本美国韩国 | 国产在线视频你懂得 | 老妇女毛片 | 天天躁狠狠躁狠狠躁夜夜躁 | 台湾中文娱乐综合久久久 | a在线观看欧美在线观看 | 动漫涩涩视频 | 日韩精品在线观看免费 | 日本3p视频在线看高清 | 国产成人精品亚洲77美色 | 天天精品在线 | 亚洲人成网站在线观看90影院 | 妞干网免费| 黄茄子视频| 日日操夜夜操免费视频 | 中国女人三级在线播放 | 国产精品综合久成人 | 一级黄色录像放 | 欧美日韩精品福利在线观看 | 国产xx做受视频国语对白 | 在线免费观看成人 | 日韩毛片在线 | 国产成人18黄网站在线观看网站 | 亚洲国产精品线播放 | 开心成人激情 | 亚洲视频在线网站 | 日韩在线视频网址 | 亚洲国产一区二区三区最新 |