Following command can be used to evaluate query performance of a MongoDB Collection:
db.<collectionName>.find().explain("executionStats");
The above command would print result such as following. COLLSCAN represents the collection scan.
{ "queryPlanner" : { "plannerVersion" : 1, "namespace" : "vitalflux.user", "indexFilterSet" : false, "parsedQuery" : { }, "winningPlan" : { "stage" : "COLLSCAN", "direction" : "forward" }, "rejectedPlans" : [ ] }, "executionStats" : { "executionSuccess" : true, "nReturned" : 100, "executionTimeMillis" : 0, "totalKeysExamined" : 0, "totalDocsExamined" : 100, "executionStages" : { "stage" : "COLLSCAN", "nReturned" : 100, "executionTimeMillisEstimate" : 0, "works" : 102, "advanced" : 100, "needTime" : 1, "needYield" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "invalidates" : 0, "direction" : "forward", "docsExamined" : 100 } }, "serverInfo" : { "host" : "rs-HP83", "port" : 27017, "version" : "3.4.6", "gitVersion" : "c55eb86ef46ee7aede3b1e2a5d184a7df4bfb5b5" }, "ok" : 1 }
Query Performance Metrics
Following are some of the metrics to watchout for when evaluating query performance:
- totalKeysExamined: Total number of index entries scanned
- totalDocsExamined: Total number of documents scanned to find the results.
- executionTimeMillis: Time required to excute the query
Latest posts by Ajitesh Kumar (see all)
- Agentic Reasoning Design Patterns in AI: Examples - October 18, 2024
- LLMs for Adaptive Learning & Personalized Education - October 8, 2024
- Sparse Mixture of Experts (MoE) Models: Examples - October 6, 2024
I found it very helpful. However the differences are not too understandable for me