Computer >> Máy Tính >  >> Lập trình >> MongoDB

Nhận thống kê thực thi trong MongoDB cho một bộ sưu tập

Để nhận số liệu thống kê, hãy sử dụng giải thích () trong MongoDB. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo157.insertOne({"Status":"Active"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e354fdffdf09dd6d08539fc")
}
> db.demo157.insertOne({"Status":"InActive"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e354fe3fdf09dd6d08539fd")
}

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo157.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e354fdffdf09dd6d08539fc"), "Status" : "Active" }
{ "_id" : ObjectId("5e354fe3fdf09dd6d08539fd"), "Status" : "InActive" }

Sau đây là cách triển khai giải thích () trong MongoDB -

> db.demo157.find({Status: { $in: ['Active','InActive'] }}).explain("executionStats");

Điều này sẽ tạo ra kết quả sau -

{
   "queryPlanner" : {
      "plannerVersion" : 1,
      "namespace" : "test.demo157",
      "indexFilterSet" : false,
      "parsedQuery" : {
         "Status" : {
            "$in" : [
               "Active",
               "InActive"
            ]
         }
      },
      "winningPlan" : {
         "stage" : "COLLSCAN",
         "filter" : {
            "Status" : {
               "$in" : [
                  "Active",
                  "InActive"
               ]
            }
         },
         "direction" : "forward"
      },
      "rejectedPlans" : [ ]
   },
   "executionStats" : {
      "executionSuccess" : true,
      "nReturned" : 2,
      "executionTimeMillis" : 18,
      "totalKeysExamined" : 0,
      "totalDocsExamined" : 2,
      "executionStages" : {
         "stage" : "COLLSCAN",
         "filter" : {
            "Status" : {
               "$in" : [
                  "Active",
                  "InActive"
               ]
            }
         },
         "nReturned" : 2,
         "executionTimeMillisEstimate" : 0,
         "works" : 4,
         "advanced" : 2,
         "needTime" : 1,
         "needYield" : 0,
         "saveState" : 0,
         "restoreState" : 0,
         "isEOF" : 1,
         "invalidates" : 0,
         "direction" : "forward",
         "docsExamined" : 2
      }
   },
   "serverInfo" : {
      "host" : "DESKTOP-QN2RB3H",
      "port" : 27017,
      "version" : "4.0.5",
      "gitVersion"
      "3739429dd92b92d1b0ab120911a23d50bf03c412"
   },
   "ok" : 1
}