數(shù)據(jù)庫(kù)索引小記

索引的實(shí)現(xiàn)方式
  數(shù)據(jù)庫(kù)索引凤巨,是數(shù)據(jù)庫(kù)管理系統(tǒng)中一個(gè)排序的數(shù)據(jù)結(jié)構(gòu),以協(xié)助快速查詢、更新數(shù)據(jù)庫(kù)表中數(shù)據(jù)客给。索引的實(shí)現(xiàn)通常使用B樹及其變種B+樹
  B-Tree中一次檢索最多需要h-1次I/O(根節(jié)點(diǎn)常駐內(nèi)存),漸進(jìn)復(fù)雜度為O(h)=O(logdN)握巢。一般實(shí)際應(yīng)用中,出度d是非常大的數(shù)字松却,通常超過(guò)100暴浦,因此h非常薪啊(通常不超過(guò)3)。
  而紅黑樹這種結(jié)構(gòu)歌焦,h明顯要深的多飞几。由于邏輯上很近的節(jié)點(diǎn)(父子)物理上可能很遠(yuǎn),無(wú)法利用局部性独撇,所以紅黑樹的I/O漸進(jìn)復(fù)雜度也為O(h)屑墨,效率明顯比B-Tree差很多。

索引種類
根據(jù)數(shù)據(jù)庫(kù)的功能券勺,可以在數(shù)據(jù)庫(kù)設(shè)計(jì)器中創(chuàng)建四種索引:
  唯一索引绪钥、非唯一索引、主鍵索引和聚集索引关炼。 盡管唯一索引有助于定位信息程腹,但為獲得最佳性能結(jié)果,建議改用主鍵或唯一約束儒拂。
  注意:在數(shù)據(jù)庫(kù)關(guān)系圖中為表定義主鍵將自動(dòng)創(chuàng)建主鍵索引寸潦,主鍵索引是唯一索引的特定類型。當(dāng)在查詢中使用主鍵索引時(shí)社痛,它還允許對(duì)數(shù)據(jù)的快速訪問(wèn)见转。

索引建立依據(jù)
建立索引常用的規(guī)則如下:

  • 表的主鍵、外鍵必須有索引蒜哀;
  • 數(shù)據(jù)量超過(guò)300的表應(yīng)該有索引斩箫;
  • 經(jīng)常與其他表進(jìn)行連接的表,在連接字段上應(yīng)該建立索引撵儿;
  • 經(jīng)常出現(xiàn)在Where子句中的字段乘客,特別是大表的字段,應(yīng)該建立索引淀歇;
  • 索引應(yīng)該建在選擇性高的字段上易核;
  • 索引應(yīng)該建在小字段上,對(duì)于大的文本字段甚至超長(zhǎng)字段浪默,不要建索引牡直;
  • 復(fù)合索引的建立需要進(jìn)行仔細(xì)分析;盡量考慮用單字段索引代替:
    • 正確選擇復(fù)合索引中的主列字段纳决,一般是選擇性較好的字段碰逸;

    • 復(fù)合索引的幾個(gè)字段是否經(jīng)常同時(shí)以AND方式出現(xiàn)在Where子句中?單字段查詢是否極少甚至沒(méi)有阔加?如果是花竞,則可以建立復(fù)合索引;否則考慮單字段索引;

    • 如果復(fù)合索引中包含的字段經(jīng)常單獨(dú)出現(xiàn)在Where子句中约急,則分解為多個(gè)單字段索引零远;

    • 如果復(fù)合索引所包含的字段超過(guò)3個(gè),那么仔細(xì)考慮其必要性厌蔽,考慮減少?gòu)?fù)合的字段牵辣;

    • 如果既有單字段索引,又有這幾個(gè)字段上的復(fù)合索引奴饮,一般可以刪除復(fù)合索引纬向;

  • 頻繁進(jìn)行數(shù)據(jù)操作的表,不要建立太多的索引戴卜;
  • 刪除無(wú)用的索引逾条,避免對(duì)執(zhí)行計(jì)劃造成負(fù)面影響
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末投剥,一起剝皮案震驚了整個(gè)濱河市师脂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌江锨,老刑警劉巖吃警,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異啄育,居然都是意外死亡酌心,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門挑豌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)安券,“玉大人,你說(shuō)我怎么就攤上這事氓英『蠲悖” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵债蓝,是天一觀的道長(zhǎng)壳鹤。 經(jīng)常有香客問(wèn)我盛龄,道長(zhǎng)饰迹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任余舶,我火速辦了婚禮啊鸭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘匿值。我一直安慰自己赠制,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著钟些,像睡著了一般烟号。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上政恍,一...
    開封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天汪拥,我揣著相機(jī)與錄音,去河邊找鬼篙耗。 笑死迫筑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的宗弯。 我是一名探鬼主播脯燃,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蒙保!你這毒婦竟也來(lái)了辕棚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤追他,失蹤者是張志新(化名)和其女友劉穎坟募,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體邑狸,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡懈糯,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了单雾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赚哗。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖硅堆,靈堂內(nèi)的尸體忽然破棺而出屿储,到底是詐尸還是另有隱情,我是刑警寧澤渐逃,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布够掠,位于F島的核電站,受9級(jí)特大地震影響茄菊,放射性物質(zhì)發(fā)生泄漏疯潭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一面殖、第九天 我趴在偏房一處隱蔽的房頂上張望竖哩。 院中可真熱鬧,春花似錦脊僚、人聲如沸相叁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)增淹。三九已至椿访,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間虑润,已是汗流浹背赎离。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留端辱,地道東北人梁剔。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像舞蔽,于是被迫代替她去往敵國(guó)和親荣病。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容