更新時間: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ù)的。
大多數(shù)mysql引擎都支持這種索引;
B-Tree(M=4)
B-Tree(M=4,依次插入1~6)
存儲引擎不需要進(jìn)行全表掃描來獲取需要的數(shù)據(jù),取而代之是從索引的根節(jié)點(diǎn)開始進(jìn)行搜索;
適用于:
限制:
在mysql中,只有memory引擎顯式支持哈希索引;基于哈希表實(shí)現(xiàn),只有精確匹配索引所有列的查詢才有效;對于每一行數(shù)據(jù),存儲引擎會對所有的索引列計(jì)算一個哈希碼,不同的鍵值行計(jì)算出的哈希碼不一樣,哈希索引將所有的哈希碼存儲在索引中,同時在哈希表中保存指向每個數(shù)據(jù)行的指針;(hash索引結(jié)構(gòu):hash值:指針)
優(yōu)勢:查找速度非常快
限制:
索引優(yōu)點(diǎn):
索引的缺點(diǎn)
哪些情況需要加索引?
以上就是動力節(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
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743