কম্পিউটার টিউটোরিয়াল

MongoDB-এ শর্তসাপেক্ষ কালেকশন সাইজ (বাইটে) কিভাবে বের করবেন?

MongoDB-এ নির্দিষ্ট শর্ত পূরণ করা ডকুমেন্টগুলোর মোট সাইজ (বাইটে) বের করতে Object.bsonsize() ফাংশন ব্যবহার করে প্রতিটি ডকুমেন্টের সাইজ যোগ করতে হবে।

উদাহরণ

কয়েকটি ডকুমেন্ট তৈরি করুন:

> db.mongoDBCollectionSizeDemo.insertOne({"Name": "John", "Age": 23});
{ "acknowledged" : true, "insertedId" : ObjectId("5cf23e3db64a577be5a2bc16") }

> db.mongoDBCollectionSizeDemo.insertOne({"Name": "Chris", "Age": 24});
{ "acknowledged" : true, "insertedId" : ObjectId("5cf23e45b64a577be5a2bc17") }

> db.mongoDBCollectionSizeDemo.insertOne({"Name": "Robert", "Age": 26});
{ "acknowledged" : true, "insertedId" : ObjectId("5cf23e4db64a577be5a2bc18") }

সকল ডকুমেন্ট দেখুন:

> db.mongoDBCollectionSizeDemo.find();

আউটপুট:

{ "_id" : ObjectId("5cf23e3db64a577be5a2bc16"), "Name" : "John", "Age" : 23 }
{ "_id" : ObjectId("5cf23e45b64a577be5a2bc17"), "Name" : "Chris", "Age" : 24 }
{ "_id" : ObjectId("5cf23e4db64a577be5a2bc18"), "Name" : "Robert", "Age" : 26 }

Name = "Robert" olan ডকুমেন্টের সাইজ বের করা

> var collectionsize = 0;
> db.mongoDBCollectionSizeDemo.find({Name: 'Robert'}).forEach(function(d) {
    var s = Object.bsonsize(d);
    collectionsize = collectionsize + s;
})
> print(collectionsize);

আউটপুট:

52

ব্যাখ্যা:

  • Object.bsonsize(document) — ডকুমেন্টের BSON সাইজ বাইটে রিটার্ন করে।
  • forEach — ক্যোয়ারি ফলাফলের প্রতিটি ডকুমেন্টের জন্য লুপ চালায়।
  • এই উদাহরণে শুধু একটি ডকুমেন্ট ম্যাচ করল, তার সাইজ ৫২ বাইট।

নোট: এটি শেল-সাইড ক্যালকুলেশন। সার্ভার-সাইডে collStats বা $bsonSize (MongoDB ৪.৪+) ব্যবহার করা ভালো।

আধুনিক বিকল্প (MongoDB ৪.৪+): $bsonSize এগ্রিগেশন

db.mongoDBCollectionSizeDemo.aggregate([
    { $match: { Name: "Robert" } },
    { $group: { _id: null, totalSize: { $sum: { $bsonSize: "$$ROOT" } } } }
]);
  1. MongoDB-এ কালেকশন থেকে টপমোস্ট (প্রথম) ডকুমেন্ট বের করা

  2. কলেকশনের আকার বের করার জাভা প্রোগ্রাম

  3. MongoDB কালেকশন থেকে সব ফিল্ড নাম দক্ষতার সাথে রিট্রিভ করুন

  4. MongoDB কালেকশনে সকল কি নাম সহজে রিট্রিভ করুন