最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MongoDB數(shù)據(jù)庫中索引(index)詳解

 更新時間:2016年11月28日 08:51:01   作者:運維部落  
本文給大家詳細介紹了MongoDB數(shù)據(jù)庫中的索引的知識,優(yōu)缺點以及使用技巧等方面,非常細致,有需要的小伙伴可以參考下

索引:特殊的數(shù)據(jù)結(jié)構(gòu),存儲表的數(shù)據(jù)的一小部分以實現(xiàn)快速查詢

優(yōu)點:

1、大大減少了服務器需要掃描的數(shù)據(jù)量

2、索引可以幫助服務器避免排序或使用臨時表

3、索引可以將隨機io轉(zhuǎn)換為順序io

索引評估:三星(非常好)

一星:索引如果能將相關(guān)的記錄放置到一起

二星:索引中數(shù)據(jù)的存儲順序與查找標準中順序一致

三星:如果索引中包含查詢中所需要的全部數(shù)據(jù):(覆蓋索引)

DBA書:關(guān)系型數(shù)據(jù)庫索引設計與優(yōu)化

索引類別:

順序索引

散列索引:將索引映射至散列桶上,映射是通過散列函數(shù)進行的

評估索引的標準:

訪問類型:做等值比較用散列索引,用范圍比較時用順序索引

訪問時間:

插入時長:

刪除時長:

空間開銷:

順序索引:

聚集索引:如果某記錄文件中的記錄順序是按照對應的搜索碼指定的順序排序,聚集索引頁成為主索引

非聚集索引:搜索碼中的指定的次序與記錄文件中的記錄次序不一致

有聚集索引的數(shù)據(jù)文件,也叫做索引順序文件

根據(jù)索引中是否為每個記錄相應的創(chuàng)建索引項,可分為稠密索引和稀疏索引

多級索引:(但對頻繁修改的數(shù)據(jù),性能很差)

輔助索引必須是稠密索引

B+樹索引:順序索引

Balance Tree:平衡樹索引

順序索引的特性:

全值匹配:Name='user12'

匹配最左前綴:Name LIKE  'User1%',無效:Name LIKE '%User1%'

匹配列前綴:Name LIKE  'User1%',無效:Name LIKE '%User1%'

匹配范圍值

精確匹配某一列并范圍匹配另外一列:

只訪問索引的查詢

散列索引:

散列函數(shù):

分布隨機

分布均勻

適用場景:

精確匹配:=,IN(),<=>

Mysql:全文索引,fulltext

sphinx,lucene

空間索引:必須使用空間索引函數(shù)獲取相應的查詢結(jié)果

主鍵、唯一鍵

Mysql:創(chuàng)建索引

create index index_name on table (col1,…)

alter table add index

alter table drop index

drop index index_name from table

show indexes from table

Mongodb創(chuàng)建索引:

id字段就有主索引

在Name創(chuàng)建索引:

查看所有:

默認在id上創(chuàng)建了主索引

唯一索引:

db.collection.ensureIndex({"user_id":1},{unique:true})

sparse index:稀疏索引

db.collection.ensureIndex({"user_id":1},{sparse:true})

Mongodb:

索引可以創(chuàng)建在collection上,也可以創(chuàng)建在子文檔中

Mongodb索引類型:

單鍵索引

組合索引

多鍵索引:

空間索引

文本索引

hash索引

hash索引:

刪除索引:

或者

db.mycoll.dropIndexes():刪除mycoll的所有索引

查詢過程:explain

掃描了100個數(shù)據(jù)

創(chuàng)建索引后,只掃描一個數(shù)據(jù)

指定索引:

創(chuàng)建組合索引:

通過組合索引查詢:

> db.testcoll.find({Name:'User19'}).hint({Name:1,Age:1}).explain()
{
 "cursor" : "BtreeCursor Name_1_Age_1",
 "isMultiKey" : false,
 "n" : 1,
 "nscannedObjects" : 1,
 "nscanned" : 1,
 "nscannedObjectsAllPlans" : 1,
 "nscannedAllPlans" : 1,
 "scanAndOrder" : false,
 "indexOnly" : false,
 "nYields" : 0,
 "nChunkSkips" : 0,
 "millis" : 0,
 "indexBounds" : {
  "Name" : [
   [
    "User19",
    "User19"
   ]
  ],
  "Age" : [
   [
    {
     "$minElement" : 1
    },
    {
     "$maxElement" : 1
    }
   ]
  ]
 },
 "server" : "stu:27017"
}

相關(guān)文章

  • PHP  MongoDB GridFS 存儲文件的方法詳解

    PHP MongoDB GridFS 存儲文件的方法詳解

    這篇文章主要介紹了PHP MongoDB GridFS 存儲文件的方法詳解的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • Mongodb設置TTL索引自動清除數(shù)據(jù)與過期數(shù)據(jù)的方法

    Mongodb設置TTL索引自動清除數(shù)據(jù)與過期數(shù)據(jù)的方法

    今天小編就為大家分享一篇關(guān)于Mongodb設置TTL索引自動清除數(shù)據(jù)與過期數(shù)據(jù)的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Mongoose 在egg中的使用詳解

    Mongoose 在egg中的使用詳解

    這篇文章主要介紹了Mongoose 在egg中的使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • mongodb中使用distinct去重的簡單方法

    mongodb中使用distinct去重的簡單方法

    怎么在mongodb中實現(xiàn)類似于SQL中distinct的功能,查詢某一個字段所有的值,今天我們就來探討下這個問題。
    2015-05-05
  • MongoDB固定集合(capped collection)的知識小結(jié)

    MongoDB固定集合(capped collection)的知識小結(jié)

    固定集合指的是事先創(chuàng)建,并且大小固定的集合。下面這篇文章主要給大家總結(jié)介紹了MongoDB固定集合(capped collection)的知識,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起學習學習吧
    2018-10-10
  • MongoDB快速入門筆記(六)之MongoDB的文檔修改操作

    MongoDB快速入門筆記(六)之MongoDB的文檔修改操作

    這篇文章主要介紹了MongoDB快速入門筆記(六)之MongoDB的文檔修改操作的相關(guān)資料,需要的朋友可以參考下
    2016-06-06
  • cgroup限制mongodb進程內(nèi)存大小

    cgroup限制mongodb進程內(nèi)存大小

    這篇文章主要介紹了cgroup限制mongodb進程內(nèi)存大小,需要的朋友可以參考下
    2014-07-07
  • SpringBoot集成Mongodb的操作方法

    SpringBoot集成Mongodb的操作方法

    本文介紹了MongoDB的基本概念、Docker安裝步驟、SpringBoot整合MongoDB的方法,以及MongoRepository和MongoTemplate的區(qū)別,感興趣的朋友一起看看吧
    2024-11-11
  • Mongodb UPDATE使用$sort將數(shù)組重新排序的示例代碼

    Mongodb UPDATE使用$sort將數(shù)組重新排序的示例代碼

    $sort方法在$push操作過程中,修改數(shù)組元素的排序,$sort方法,必須和$each共同使用,mongodb允許用戶傳遞一個空的數(shù)組給$each方法,保證用戶無須向數(shù)組中插入元素也可以將數(shù)組進行排序,本文給大家介紹了Mongodb UPDATE使用$sort將數(shù)組重新排序,需要的朋友可以參考下
    2024-06-06
  • MongoDB常用操作匯總

    MongoDB常用操作匯總

    MongoDB 是由C++語言編寫的,是一個基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng)。在高負載的情況下,添加更多的節(jié)點,可以保證服務器性能。MongoDB 旨在為WEB應用提供可擴展的高性能數(shù)據(jù)存儲解決方案。
    2017-05-05

最新評論

逊克县| 河北省| 鄢陵县| 宽甸| 贵南县| 台湾省| 澄江县| 宝鸡市| 白河县| 泰顺县| 武安市| 东莞市| 分宜县| 邵阳县| 五家渠市| 晋城| 黔西县| 赤城县| 阳西县| 元江| 义马市| 双辽市| 阜南县| 尚义县| 枣强县| 溆浦县| 独山县| 土默特左旗| 墨江| 游戏| 彭州市| 错那县| 白河县| 隆化县| 栾川县| 乐清市| 鄱阳县| 莱西市| 巴塘县| 安康市| 瓮安县|