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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java常見面試題—數(shù)據(jù)庫索引詳解

Java常見面試題—數(shù)據(jù)庫索引詳解

更新時間:2019-10-12 10:26:52 來源:動力節(jié)點(diǎn) 瀏覽5764次

索引在mysql中也叫做鍵(key),是存儲引擎用于快速找到記錄的一種數(shù)據(jù)結(jié)構(gòu)。

索引的作用:加速查詢操作;副作用:降低寫操作性能;

索引常見的兩種數(shù)據(jù)結(jié)構(gòu)類型:

1.B-Tree索引:它就是傳統(tǒng)意義上的索引,它是最常用、最有效的索引。

2.哈希索引:哈希索引是一種自適應(yīng)的索引,數(shù)據(jù)庫會根據(jù)表的使用情況自動生成哈希索引,我們?nèi)藶槭菦]辦法干預(yù)的。

B-Tree索引

大多數(shù)mysql引擎都支持這種索引;

  • B-Tree通常意味著所有的值都是按順序存儲的,
  • 并且每一個葉子頁到根的距離相同;

image.png

B-Tree(M=4)

image.png

B-Tree(M=4,依次插入1~6)

存儲引擎不需要進(jìn)行全表掃描來獲取需要的數(shù)據(jù),取而代之是從索引的根節(jié)點(diǎn)開始進(jìn)行搜索;

適用于:

  • 全鍵值查找(全值匹配)
  • 鍵值范圍(若是有多列的合并索引,需要精確匹配某一列并范圍匹配另一列)
  • 鍵前綴查找
  • 按順序查找(orderby)

限制:

  • 如果不是按照索引的最左列開始查找,則無法使用索引
  • 不能跳過索引中的列
  • 如果查詢中有某個列的范圍查詢,其右邊的所有列都無法使用索引優(yōu)化查詢

哈希索引

在mysql中,只有memory引擎顯式支持哈希索引;基于哈希表實(shí)現(xiàn),只有精確匹配索引所有列的查詢才有效;對于每一行數(shù)據(jù),存儲引擎會對所有的索引列計(jì)算一個哈希碼,不同的鍵值行計(jì)算出的哈希碼不一樣,哈希索引將所有的哈希碼存儲在索引中,同時在哈希表中保存指向每個數(shù)據(jù)行的指針;(hash索引結(jié)構(gòu):hash值:指針)

優(yōu)勢:查找速度非常快

限制:

  • 無法用于排序
  • 不支持部分索引列匹配查找
  • 只支持等值比較查詢

索引優(yōu)點(diǎn):

  • 降低需要掃描的數(shù)據(jù)量,根據(jù)索引定位資源,減少IO次數(shù);
  • 可以幫助避免排序操作,因?yàn)樗饕旧砭褪歉鶕?jù)順序存放的,避免使用臨時表;
  • 幫助將隨機(jī)IO轉(zhuǎn)為順序IO,提示系統(tǒng)性能;

索引的缺點(diǎn)

  • 第一,創(chuàng)建索引和維護(hù)索引要耗費(fèi)時間,這種時間隨著數(shù)據(jù)量的增加而增加。
  • 第二,索引需要占物理空間,除了數(shù)據(jù)表占數(shù)據(jù)空間之外,每一個索引還要占一定的物理空間,如果要建立聚簇索引,那么需要的空間就會更大。
  • 第三,當(dāng)對表中的數(shù)據(jù)進(jìn)行增加、刪除和修改的時候,索引也要動態(tài)的維護(hù),這樣就降低了數(shù)據(jù)的維護(hù)速度。

哪些情況需要加索引?

  • 在經(jīng)常需要搜索的列上,可以加快搜索的速度;
  • 在作為主鍵的列上,強(qiáng)制該列的唯一性和組織表中數(shù)據(jù)的排列結(jié)構(gòu);
  • 在經(jīng)常用在連接的列上,這些列主要是一些外鍵,可以加快連接的速度;
  • 在經(jīng)常需要根據(jù)范圍進(jìn)行搜索的列上創(chuàng)建索引,因?yàn)樗饕呀?jīng)排序,其指定的范圍是連續(xù)的;
  • 在經(jīng)常需要排序的列上創(chuàng)建索引,因?yàn)樗饕呀?jīng)排序,這樣查詢可以利用索引的排序,加快排序查詢時間;
  • 在經(jīng)常使用在WHERE子句中的列上面創(chuàng)建索引,加快條件的判斷速度。

以上就是動力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)小編分享的“Java常見面試題—數(shù)據(jù)庫索引詳解”的內(nèi)容,希望對大家有幫助,更多java面試題請繼續(xù)關(guān)注動力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)官網(wǎng),每天會精彩內(nèi)容分享與你。

相關(guān)java面試題推薦

2019最新最全java面試題及答案:http://m.ilovecolors.com.cn/tutorial_baseinterviewquestions/

Java常見面試題匯總:http://m.ilovecolors.com.cn/javazixun/1007.html

2019最新java面試題含答案(基礎(chǔ)篇):http://m.ilovecolors.com.cn/javazixun/1145.html

各大互聯(lián)網(wǎng)公司Java面試題匯總:http://m.ilovecolors.com.cn/javazixun/1867.html

2019最新Java常見面試題(附帶答案):http://m.ilovecolors.com.cn/javazixun/891.html

常被問到的Java面試題(帶全部答案):http://m.ilovecolors.com.cn/javazixun/886.html

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: www.色网站| 日日爽| 色黄啪啪网18以下勿进动画 | 亚洲国产精品免费观看 | 亚洲欧洲视频在线观看 | 国产区精品一区二区不卡中文 | 五月天婷婷综合 | 婷婷六月丁香色婷婷网 | 国产com| 亚洲精品亚洲人成在线观看麻豆 | 日韩三级伦理片 | 五月婷婷色 | 午夜寂寞影院视频观看 | 欧美性猛交ⅹxxx乱大交禽 | 国产成人精品免费午夜 | 一级特级aaaa毛片免费观看 | 亚洲狠狠97婷婷综合久久久久 | 黄色免费大片 | 91桃色国产线观看免费 | 免费网站看v片在线成人国产系列 | 国产成人在线观看免费网站 | 我要看免费的毛片 | 黄大色黄美女精品大毛片 | 欧美中文字幕在线播放 | 国产一级视频在线观看 | 免费看男女做黄的软件 | 91精品国产一区二区三区左线 | 欧美日韩中文国产 | 757午夜视频国产精品 | 无遮羞肉体动漫影院免费版 | 欧美日韩不卡中文字幕在线 | 黄视频在线观看网站 | a一级爱做片免费观看欧美 a一级爱做片免费 | 国产精品成在线观看 | 日本久久久久久久中文字幕 | 日本一区深夜影院深a | 国产日韩视频在线观看 | 人人干天天干 | 亚欧色视频在线观看免费 | 天天天天添天天拍天天谢 | 伊人激情视频 |