索引學(xué)習(xí)筆記

兩個關(guān)鍵詞

  • ASC是升序排序
  • DESC是降序排序

單鍵索引

  • 為單個字段創(chuàng)建索引,如果這個字段不是在大多數(shù)場景下能過濾90%的數(shù)據(jù),或者數(shù)據(jù)量非常大的情況下,盡量建立組合索引,畢竟數(shù)據(jù)庫通過單鍵索引查詢后剩下的內(nèi)容沒有索引它就會逐個查找,消耗大量IO。

組合索引

  • 為多個字段創(chuàng)建索引,一個經(jīng)常用來過濾數(shù)據(jù)的字段應(yīng)該放在索引首位,然后其他的字段次之。不要用過多的字段作為組合索引,評估這幾個字段能過濾掉的數(shù)據(jù)量,差不多就行了。
  • 需要注意下列情況
    建立ABC組合索引相當于建立了A,AB,ABC索引,如果執(zhí)行A或者AB或者ABC查詢都會使用索引查詢,
    如果執(zhí)行AC則不會使用索引。
    mongodb 是個特例,如果執(zhí)行AC也是會使用索引的。但是執(zhí)行BC不會使用索引
    mongodb 查詢時可以不按照索引字段順序時使用索引查詢

稠密索引

  • 所謂稠密索引就是數(shù)據(jù)表中每條記錄的字段值都成為索引的一部分,索引的這個字段后面跟一個存儲地址。這樣就可以先通過排好序的索引字段找到這個值,再根據(jù)索引里面存儲的存儲地址找到存儲記錄了。

稀疏索引

  • 稀疏索引是為了避免數(shù)據(jù)量過大而導(dǎo)致索引過大設(shè)計的,它只根據(jù)一個存儲塊建立一條索引記錄,比如可能一個存儲塊中有100條記錄,但它只存儲這個存儲塊的第一條記錄,然后給一個存儲地址指向存儲塊,數(shù)據(jù)庫查找的時候先找到索引指向的存儲塊,再進入存儲塊查找準確的值。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容