| শুধুমাত্র ক্লাউড ফায়ারস্টোর এন্টারপ্রাইজ সংস্করণের জন্য প্রাসঙ্গিক। |
এই পৃষ্ঠাটি MongoDB সামঞ্জস্যপূর্ণ ক্লাউড ফায়ারস্টোরে ডকুমেন্ট, ফিল্ড এবং ইনডেক্স এন্ট্রির স্টোরেজ সাইজ বর্ণনা করে।
আপনি মূল্য নির্ধারণ পৃষ্ঠায় এই স্টোরেজের খরচ সম্পর্কে জানতে পারেন।
স্ট্রিং আকার
স্ট্রিং মাপগুলি UTF-8 এনকোডেড বাইট + 1 এর সংখ্যা হিসাবে গণনা করা হয়।
নিম্নলিখিতগুলি স্ট্রিং হিসাবে সংরক্ষণ করা হয়:
- সংগ্রহের নাম
- ক্ষেত্রের নাম
- স্ট্রিং ফিল্ডের মান (
_idসহ)
উদাহরণস্বরূপ:
- সংগ্রহের নামের
tasks৫ বাইট + ১ বাইট ব্যবহার করা হয়, মোট ৬ বাইট। - ক্ষেত্রের নামের
description১১ বাইট + ১ বাইট ব্যবহার করা হয়েছে, মোট ১২ বাইট।
ক্ষেত্রের মান আকার
নিম্নলিখিত টেবিলটি ধরণ অনুসারে ক্ষেত্রের মানগুলির আকার দেখায়।
| আদর্শ | আকার |
|---|---|
| অ্যারে | এর মানগুলির আকারের যোগফল |
| বুলিয়ান | ১ বাইট |
| বাইনারি ডেটা | একটি নন-জেনেরিক (নন-০) সাব-টাইপের জন্য বাইট দৈর্ঘ্য + ১ |
| তারিখ | ৮ বাইট |
| দ্বিগুণ | ৮ বাইট |
| ডাবল১২৮ | ১৬ বাইট |
| ৩২-বিট পূর্ণসংখ্যা | ৪ বাইট |
| ৬৪-বিট পূর্ণসংখ্যা (দীর্ঘ) | ৮ বাইট |
| বস্তু | এমবেডেড অবজেক্টে প্রতিটি ফিল্ড নামের স্ট্রিং আকার এবং প্রতিটি ফিল্ড ফ্যালুর আকারের যোগফল |
| মিন কী | ১ বাইট |
| সর্বোচ্চ কী | ১ বাইট |
| শূন্য | ১ বাইট |
| নিয়মিত অভিব্যক্তি | (প্যাটার্নের দৈর্ঘ্য + ১) + (বিকল্পের দৈর্ঘ্য + ১) |
| টাইমস্ট্যাম্প | ৮ বাইট |
| স্ট্রিং | UTF-8 এনকোডেড বাইটের সংখ্যা + ১ |
উদাহরণস্বরূপ, done নামের একটি বুলিয়ান ফিল্ডে ৬ বাইট ব্যবহার করা হবে:
-
doneক্ষেত্রের নামের জন্য ৫ বাইট - বুলিয়ান মানের জন্য ১ বাইট
নথির আকার
একটি নথির আকার হল এর যোগফল:
- সংগ্রহের নামের স্ট্রিং সাইজ
- প্রতিটি ক্ষেত্রের নামের স্ট্রিং আকারের যোগফল (
_idব্যতীত) - প্রতিটি ক্ষেত্রের মানের আকারের যোগফল (
_idসহ) - ৪৮টি অতিরিক্ত বাইট
এই উদাহরণটি একটি ডকুমেন্ট ইন কালেকশন tasks জন্য:
{
"_id": "my_task_id",
"type": "Personal",
"done": false,
"priority": 1,
"description": "Learn Cloud Firestore"
}
ক্ষেত্রগুলির মোট আকার ৭৮ বাইট:
| ক্ষেত্রের নাম এবং মান | বাইটে ক্ষেত্রের আকার |
|---|---|
"_id": "my_task_id" | ক্ষেত্রের স্ট্রিং মানের জন্য ১১ |
"type": "Personal" | ১৪ ক্ষেত্রের নামের জন্য 5 + ক্ষেত্রের স্ট্রিং মানের জন্য 9 |
"done": false | ৬ ক্ষেত্রের নামের জন্য 5 + ক্ষেত্রের বুলিয়ান মানের জন্য 1 |
"priority": 1 | ১৭ ক্ষেত্রের নামের জন্য 9 + ক্ষেত্রের 32-বিট পূর্ণসংখ্যা মানের জন্য 4 |
"description": "Learn Cloud Firestore" | ৩৪ ক্ষেত্রের নামের জন্য 12 + ক্ষেত্রের স্ট্রিং মানের জন্য 22 |
তাহলে ডকুমেন্টের আকার হল 6 + 78 + 48 = 132 বাইট:
- সংগ্রহের নামের জন্য ৬
- ক্ষেত্রগুলির জন্য ৭৮ বাইট
- ৪৮টি অতিরিক্ত বাইট
সূচক প্রবেশের আকার
একটি সূচকে একটি সূচক এন্ট্রির আকার হল এর যোগফল:
- সংগ্রহের নামের স্ট্রিং সাইজ
-
_idক্ষেত্রের মানের আকার - সূচীকৃত ক্ষেত্রের মানের যোগফল
- ৪৮টি অতিরিক্ত বাইট
tasks সংগ্রহের একটি নথি বিবেচনা করুন:
{
"_id": "my_task_id",
"type": "Personal",
"done": false,
"priority": 1,
"description": "Learn Cloud Firestore"
}
done এবং priority ক্ষেত্রের (উভয় ঊর্ধ্বমুখী) একটি সূচকের জন্য, এই সূচকে সূচক এন্ট্রির মোট আকার 70 বাইট:
- সংগ্রহের নামের
tasksজন্য ৬ বাইট -
_idক্ষেত্রের মানের জন্য ১১ বাইট - বুলিয়ান ফিল্ড মানের জন্য ১ বাইট
- ৩২-বিট পূর্ণসংখ্যা ক্ষেত্রের মানের জন্য ৪ বাইট
- ৪৮টি অতিরিক্ত বাইট
স্পার্স ইনডেক্সের ক্ষেত্রে, যদি কোনও ডকুমেন্টে কোনও ক্ষেত্র অন্তর্ভুক্ত না থাকে, তাহলে কোনও ইনডেক্স এন্ট্রি তৈরি করা হয় না। যদি কোনও ডকুমেন্টে কমপক্ষে একটি ইনডেক্স করা ক্ষেত্র থাকে, তাহলে অনুপস্থিত ইনডেক্স করা ক্ষেত্রগুলি NULL এ সেট করে একটি ইনডেক্স এন্ট্রি তৈরি করা হয়।
এরপর কি?
মূল্য নির্ধারণ সম্পর্কে জানুন।