Có, bạn có thể theo dõi số lần mỗi chỉ mục được sử dụng trong một truy vấn bằng cách sử dụng MongoDB $ indexStats. Sau đây là truy vấn để tạo chỉ mục trong MongoDB -
> db.demo508.createIndex({"FirstName":1});
{
"createdCollectionAutomatically" : true,
"numIndexesBefore" : 1,
"numIndexesAfter" : 2,
"ok" : 1
} Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.demo508.insertOne({"FirstName":"John"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e883818987b6e0e9d18f578")
}
> db.demo508.insertOne({"FirstName":"Chris"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e88381b987b6e0e9d18f579")
}
> db.demo508.insertOne({"FirstName":"David"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e88381f987b6e0e9d18f57a")
} 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.demo508.find();
Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5e883818987b6e0e9d18f578"), "FirstName" : "John" }
{ "_id" : ObjectId("5e88381b987b6e0e9d18f579"), "FirstName" : "Chris" }
{ "_id" : ObjectId("5e88381f987b6e0e9d18f57a"), "FirstName" : "David" } Sau đây là truy vấn để theo dõi số lần mỗi chỉ mục được sử dụng trong một truy vấn -
> db.demo508.aggregate([{ $indexStats: { } }]).pretty(); Điều này sẽ tạo ra kết quả sau -
{
"name" : "_id_",
"key" : {
"_id" : 1
},
"host" : "DESKTOP-QN2RB3H:27017",
"accesses" : {
"ops" : NumberLong(0),
"since" : ISODate("2020-04-04T07:32:27.394Z")
}
}
{
"name" : "FirstName_1",
"key" : {
"FirstName" : 1
},
"host" : "DESKTOP-QN2RB3H:27017",
"accesses" : {
"ops" : NumberLong(0),
"since" : ISODate("2020-04-04T07:32:27.527Z")
}
}