MongoDB में कर्सर इटरेट करके सभी डॉक्यूमेंट का BSON साइज जोड़ें
क्वेरी परिणाम के सभी डॉक्यूमेंट का कुल बाइनरी साइज (BSON) जानने के लिए forEach() लूप में Object.bsonsize() उपयोग करें।
कलेक्शन बनाएं और डॉक्यूमेंट इन्सर्ट करें
> db.sizeOfAllDocumentsDemo.insertOne({"StudentFirstName":"John","StudentSubject":["MongoDB","Java"]});
{ "acknowledged": true, "insertedId": ObjectId("5cd3c0c1edc6604c74817cd7") }
> db.sizeOfAllDocumentsDemo.insertOne({"StudentFirstName":"Larry","StudentSubject":["MySQL","PHP"],"StudentAge":21});
{ "acknowledged": true, "insertedId": ObjectId("5cd3c0d9edc6604c74817cd8") }
> db.sizeOfAllDocumentsDemo.insertOne({"StudentFirstName":"Chris","StudentSubject":["SQL Server","C#"],"StudentAge":23,"StudentCountryName":"US"});
{ "acknowledged": true, "insertedId": ObjectId("5cd3c0fbedc6604c74817cd9") }
सभी डॉक्यूमेंट देखें
> db.sizeOfAllDocumentsDemo.find().pretty();
{ "_id": ObjectId("5cd3c0c1edc6604c74817cd7"), "StudentFirstName": "John", "StudentSubject": ["MongoDB", "Java"] }
{ "_id": ObjectId("5cd3c0d9edc6604c74817cd8"), "StudentFirstName": "Larry", "StudentSubject": ["MySQL", "PHP"], "StudentAge": 21 }
{ "_id": ObjectId("5cd3c0fbedc6604c74817cd9"), "StudentFirstName": "Chris", "StudentSubject": ["SQL Server", "C#"], "StudentAge": 23, "StudentCountryName": "US" }
सभी डॉक्यूमेंट का कुल BSON साइज गिनें
> var allDocument = db.sizeOfAllDocumentsDemo.find();
> var counter = 0;
> allDocument.forEach(function(myDocument) {
counter = counter + Object.bsonsize(myDocument);
});
> print(counter);
358
व्याख्या
find()कर्सर लौटाता हैforEach()कर्सर के हर डॉक्यूमेंट पर फंक्शन चलाता हैObject.bsonsize(doc)डॉक्यूमेंट का BSON एन्कोडेड साइज बाइट्स में लौटाता है- कुल: 358 बाइट्स
अन्य उपयोगी तरीके
| तरीका | विवरण |
|---|---|
db.collection.stats() | कलेक्शन का कुल स्टोरेज साइज (डेटा + इंडेक्स) |
db.collection.dataSize() | केवल डॉक्यूमेंट डेटा साइज |
db.collection.totalSize() | डेटा + इंडेक्स साइज |
Object.bsonsize(doc) | एक डॉक्यूमेंट का सटीक BSON साइज |
नोट
यह तरीका क्लाइंट-साइड पर सभी डॉक्यूमेंट लोड करता है। बड़े परिणाम सेट के लिए सर्वर-साइड एग्रीगेशन बेहतर है।