第一部分
插入測試資料
#時間稍長
for(
vari =
0; i
200000
; i++)); }
驗證結果
>
db.numbers.find
().count
() 200000
第二部分
索引前奏
2.1
monogo
關鍵字explain()
explain()
可以檢視我們執行命令的內部實現,那麼我們先看一下,再沒有加索引之前,查詢一條資料所需要的時間/
掃瞄等字段
沒有對比就沒有傷害
沒有傷害哪來的動力
首先我們查閱官網中對
explain()的介紹
,在此它有個引數--verbose[冗長],往下看,發現
verbose
中又有三個可選引數
1. queryplanner: 預設model, 也就是執行的計畫;
2. executionstats: 列印執行的狀態;
3. allplan***ecution: 列印所有的執行的狀態.
返回的結果又有哪些呢?真是乙個問題接著乙個問題
繼續往下走,摘錄一段英文
output cursor.explain() operations can
return
information regarding:
1.queryplanner, which details
theplan selected
bythe
query optimizer
andlists
therejected plans;
2.executionstats, which details
theexecution
ofthe
winning plan
andthe
rejected plans;
and3.
serverinfo, which provides information
onthe
mongodb instance.
也就是最多返回三個大的字段,
1. queryplanner: 查詢優化器選擇的計畫細節,列出了拒絕計畫;
2. executionstats: 成功的執行計畫細節和拒絕計畫;
3. serverinfo: 提供了mongodb例項的資訊。
mongo官網explain返回說明
有了之上的
explain()
的主要的使用說明, 那麼就可以繼續往下繼續了.
初識mongodb 索引
預設情況下,mongodb的查詢是遍歷集合中的所有文件,找到與條件匹配的資料。如果集合中包含的文件比較多,查詢時間就會比較長。建立索引的話,系統會額外建立乙個根據索引排序,幷包含原來資料位置資訊的一組資料,當再次根據已建立索引檢索時,系統會先去索引找到位置資訊,然後根據位置資訊取出對應資料,從而避免...
Mongodb系列 初識Mongodb
一 背景 月初進行了期末考試非常榮幸可以參加到了考試系統維護中 詳情請閱讀 那些年我們一起參加的活動 15年上半年考試系統維護總結 主要負責server維護,在維護期間對mongodb相逢。mongodb什麼東東?假設有點暈的童鞋請猛戳me科普一下哈。正是因為這些優勢使得考試系統選擇用它來存放英語聽...
mongoDB 索引使用
一 索引基礎 mongodb的索引幾乎與傳統的關係型資料庫一模一樣,這其中也包括一些基本的優化技巧。下面是建立索引的命令 db.test.ensureindex 可以通過下面的名稱檢視索引是否已經成功建立 db.test.getindexes 刪除索引的命令是 db.test.dropindex 在...