MongoDB檢視執行計劃方法及相關欄位說明
> db.chenfeng.find()
{ "_id" : ObjectId("5714419cf7c81959e12a904e"), "age" : 1, "name" : "duansf" }
{ "_id" : ObjectId("571441a3f7c81959e12a904f"), "age" : 2, "name" : "duansf" }
{ "_id" : ObjectId("571441a7f7c81959e12a9050"), "age" : 3, "name" : "duansf" }
{ "_id" : ObjectId("571441abf7c81959e12a9051"), "age" : 4, "name" : "duansf" }
{ "_id" : ObjectId("571442b0f7c81959e12a9052"), "age" : 5, "name" : "duansf" }
{ "_id" : ObjectId("571442bcf7c81959e12a9053"), "age" : 6, "name" : "duansf" }
>
> db.chenfeng.find().explain()
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 6,
"nscannedObjects" : 6,
"nscanned" : 6,
"nscannedObjectsAllPlans" : 6,
"nscannedAllPlans" : 6,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 0,
"nChunkSkips" : 0,
"millis" : 0,
"server" : "XCC-Duanshufeng:27017",
"filterSet" : false
}
>
加hint強制使用索引方法,這點和關聯式資料庫特別像:
> db.chenfeng.find().hint({age:6}).explain()
{
"cursor" : "BtreeCursor idx_age_6",
"isMultiKey" : false,
"n" : 6,
"nscannedObjects" : 6,
"nscanned" : 6,
"nscannedObjectsAllPlans" : 6,
"nscannedAllPlans" : 6,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 1,
"nChunkSkips" : 0,
"millis" : 135,
"indexBounds" : {
"age" : [
[
{
"$minElement" : 1
},
{
"$maxElement" : 1
}
]
]
},
"server" : "XCC-Duanshufeng:27017",
"filterSet" : false
}
欄位說明:
cursor:返回遊標型別,有BasicCursor和BtreeCursor,BtreeCursor意味著使用了索引
nscanned:掃描document的行數
nscannedObjects:掃描物件的數量
n:返回的文件行數
millis:耗時(毫秒)
indexBounds:如果不為空,表示此查詢使用的索引資訊
server:MongoDB所在的伺服器名字,27017是埠號
索引的限制:
索引名稱不能超過128個字元
每個集合不能超過64個索引
複合索引不能超過31列
{ "_id" : ObjectId("5714419cf7c81959e12a904e"), "age" : 1, "name" : "duansf" }
{ "_id" : ObjectId("571441a3f7c81959e12a904f"), "age" : 2, "name" : "duansf" }
{ "_id" : ObjectId("571441a7f7c81959e12a9050"), "age" : 3, "name" : "duansf" }
{ "_id" : ObjectId("571441abf7c81959e12a9051"), "age" : 4, "name" : "duansf" }
{ "_id" : ObjectId("571442b0f7c81959e12a9052"), "age" : 5, "name" : "duansf" }
{ "_id" : ObjectId("571442bcf7c81959e12a9053"), "age" : 6, "name" : "duansf" }
>
> db.chenfeng.find().explain()
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 6,
"nscannedObjects" : 6,
"nscanned" : 6,
"nscannedObjectsAllPlans" : 6,
"nscannedAllPlans" : 6,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 0,
"nChunkSkips" : 0,
"millis" : 0,
"server" : "XCC-Duanshufeng:27017",
"filterSet" : false
}
>
加hint強制使用索引方法,這點和關聯式資料庫特別像:
> db.chenfeng.find().hint({age:6}).explain()
{
"cursor" : "BtreeCursor idx_age_6",
"isMultiKey" : false,
"n" : 6,
"nscannedObjects" : 6,
"nscanned" : 6,
"nscannedObjectsAllPlans" : 6,
"nscannedAllPlans" : 6,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 1,
"nChunkSkips" : 0,
"millis" : 135,
"indexBounds" : {
"age" : [
[
{
"$minElement" : 1
},
{
"$maxElement" : 1
}
]
]
},
"server" : "XCC-Duanshufeng:27017",
"filterSet" : false
}
欄位說明:
cursor:返回遊標型別,有BasicCursor和BtreeCursor,BtreeCursor意味著使用了索引
nscanned:掃描document的行數
nscannedObjects:掃描物件的數量
n:返回的文件行數
millis:耗時(毫秒)
indexBounds:如果不為空,表示此查詢使用的索引資訊
server:MongoDB所在的伺服器名字,27017是埠號
索引的限制:
索引名稱不能超過128個字元
每個集合不能超過64個索引
複合索引不能超過31列
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28211342/viewspace-2151074/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【ORACLE】物化檢視相關後設資料檢視欄位說明Oracle
- 檢視執行計劃的方法
- 檢視SQL的執行計劃方法SQL
- oracle檢視執行計劃的方法Oracle
- Oracle檢視執行計劃常用方法Oracle
- ORACLE執行計劃 explain說明OracleAI
- 檢視執行計劃
- 檢視sql執行計劃方法彙總SQL
- oracle執行計劃相關Oracle
- Oracle 執行計劃(Explain Plan) 說明OracleAI
- Oracle 執行計劃(Explain Plan) 說明OracleAI
- 檢視執行計劃(一)
- 檢視執行計劃(二)
- 檢視sql執行計劃SQL
- 多種方法檢視Oracle SQL執行計劃OracleSQL
- (轉)執行計劃相關概念
- 檢視Oracle SQL執行計劃方法比較、分析OracleSQL
- Oracle檢視執行計劃(五)Oracle
- Oracle檢視執行計劃(六)Oracle
- Oracle檢視執行計劃(一)Oracle
- Oracle檢視執行計劃(二)Oracle
- Oracle檢視執行計劃(三)Oracle
- Oracle檢視執行計劃(四)Oracle
- 檢視歷史執行計劃
- ORACLE執行計劃的檢視Oracle
- oracle如何檢視執行計劃Oracle
- 檢視oracle執行計劃 - 轉Oracle
- 檢視 OceanBase 執行計劃
- Linux 檢視核心版本命令的相關說明Linux
- Explain For理論執行計劃相關AI
- 執行計劃__獲取方法、檢視執行順序、統計資訊詳解
- 達夢資料庫SQL執行計劃檢視方法資料庫SQL
- 檢視SQL執行計劃的幾種常用方法YQSQL
- (轉)Sql Server 快速檢視錶結構(表描述及欄位說明)SQLServer
- 如何檢視SQL的執行計劃SQL
- Oracle檢視執行計劃的命令Oracle
- DBMS_XPLAN檢視執行計劃
- 使用PL/SQL檢視執行計劃SQL