初識mongodb 索引

2021-07-31 22:59:11 字數 1087 閱讀 7085

預設情況下,mongodb的查詢是遍歷集合中的所有文件,找到與條件匹配的資料。如果集合中包含的文件比較多,查詢時間就會比較長。建立索引的話,系統會額外建立乙個根據索引排序,幷包含原來資料位置資訊的一組資料,當再次根據已建立索引檢索時,系統會先去索引找到位置資訊,然後根據位置資訊取出對應資料,從而避免開啟所有文件,大量節省查詢時間。

1、建立索引

mongodb提供兩個方法建立索引:

(1)createindex()

(2)ensureindex()

由於初次接觸,所以簡單試了一下,兩種方式都能建立索引,以下使用ensureindex來建立

db.bb.ensureindex()  //bb:集合名稱  name:索引名稱  1:公升序排列

2、對比建立索引前後查詢效率

事先在資料庫插入100000條資料,查詢name:user60000

圖為未新增索引的查詢結果,第一處標記75為:查詢耗時,第二處標記為:全集合查詢

上圖為帶索引查詢結果,fetch表示帶索引查詢,時間消耗0

通過以上對比,可以看出,新增索引對查詢的效率提高是巨大的

3、檢視已新增的索引

4、刪除索引

db.bb.dropindexes()刪除全部手動建立的索引

MongoDB索引初識

第一部分 插入測試資料 時間稍長 for vari 0 i 200000 i 驗證結果 db.numbers.find count 200000 第二部分 索引前奏 2.1 monogo 關鍵字explain explain 可以檢視我們執行命令的內部實現,那麼我們先看一下,再沒有加索引之前,查詢一...

Mongodb系列 初識Mongodb

一 背景 月初進行了期末考試非常榮幸可以參加到了考試系統維護中 詳情請閱讀 那些年我們一起參加的活動 15年上半年考試系統維護總結 主要負責server維護,在維護期間對mongodb相逢。mongodb什麼東東?假設有點暈的童鞋請猛戳me科普一下哈。正是因為這些優勢使得考試系統選擇用它來存放英語聽...

mongoDB 索引使用

一 索引基礎 mongodb的索引幾乎與傳統的關係型資料庫一模一樣,這其中也包括一些基本的優化技巧。下面是建立索引的命令 db.test.ensureindex 可以通過下面的名稱檢視索引是否已經成功建立 db.test.getindexes 刪除索引的命令是 db.test.dropindex 在...