MongoDB-তে সব কালেকশনের ডকুমেন্ট সংখ্যা একসাথে জানা
MongoDB-তে ডেটাবেসের সব কালেকশনের নাম পেয়ে প্রতিটির ডকুমেন্ট কাউন্ট জানতে getCollectionNames() এবং map() ফাংশন ব্যবহার করা হয়।
সিন্ট্যাক্স:
db.getCollectionNames().map(function(anyVariableName) {
return { "yourVariableName": yourVariableName, "count": db[yourVariableName].count() }
});
উদাহরণ: 'test' ডেটাবেসে সব কালেকশনের ডকুমেন্ট কাউন্ট
> db.getCollectionNames().map(function(ColName) {
return { "ColName": ColName, "TotalDocument": db[ColName].count() }
});
ফলাফল (আংশিক):
[
{ "ColName" : "ConvertStringToDateDemo", "TotalDocument" : 4 },
{ "ColName" : "Employee_Information", "TotalDocument" : 2 },
{ "ColName" : "IdUpdateDemo", "TotalDocument" : 3 },
{ "ColName" : "IndexingDemo", "TotalDocument" : 1 },
{ "ColName" : "NotAndDemo", "TotalDocument" : 5 },
{ "ColName" : "ProductsInformation", "TotalDocument" : 2 },
...
{ "ColName" : "userStatus", "TotalDocument" : 5 }
]
ব্যাখ্যা:
db.getCollectionNames()- বর্তমান ডেটাবেসের সব কালেকশনের নামের অ্যারে রিটার্ন করে.map(function(ColName) { ... })- প্রতিটি কালেকশন নামের জন্য ফাংশন এক্সিকিউট করেdb[ColName].count()- ব্র্যাকেট নোটেশন দিয়ে ডাইনামিক্যালি কালেকশন অ্যাক্সেস করে কাউন্ট করে- ফলাফলটি অবজেক্টের অ্যারে আকারে আসে যেখানে প্রতিটি অবজেক্টে কালেকশন নাম এবং ডকুমেন্ট সংখ্যা থাকে
ব্যবহারিক টিপস:
- এটি অ্যাডমিন/মনিটরিং কাজের জন্য খুব কার্যকর
- বড় ডেটাবেসে
count()স্লো হতে পারে,estimatedDocumentCount()দ্রুত কিন্তু আনুমানিক ফলাফল দেয় - শুধু নির্দিষ্ট কালেকশনগুলো চেক করতে চাইলে ফিল্টার করে নেওয়া যায়