এই পৃষ্ঠায় Cloud Firestore-এ ডকুমেন্টের স্টোরেজ সাইজ, ডকুমেন্টের নাম, ফিল্ড ও ইন্ডেক্স এন্ট্রি সম্পর্কে বর্ণনা করা হয়েছে।
আপনি Cloud Firestore মূল্য থেকে এই স্টোরেজের খরচ সম্পর্কে জানতে পারবেন।স্ট্রিং সাইজ
স্ট্রিংয়ের সাইজ UTF-8 এনকোড করা বাইটের সংখ্যা + ১ হিসেবে গণনা করা হয়।
নিম্নলিখিতগুলি স্ট্রিং হিসেবে স্টোর করা হয়:
- কালেকশন আইডি
- স্ট্রিং ডকুমেন্ট আইডি
- ডকুমেন্টের নাম
- ফিল্ডের নাম
- স্ট্রিং ফিল্ডের ভ্যালু
যেমন:
- কালেকশন আইডি
tasks৫ বাইট + ১ বাইট ব্যবহার করে, অর্থাৎ মোট ৬ বাইট। descriptionফিল্ডের নাম ১১ বাইট + ১ বাইট ব্যবহার করে, মোট ১২ বাইট।
ডকুমেন্ট আইডি সাইজ
ডকুমেন্ট আইডির সাইজ হয় স্ট্রিং আইডির জন্য স্ট্রিং সাইজ অথবা ইন্টিজার আইডির জন্য ৮ বাইট।
ডকুমেন্টের নামের সাইজ
ডকুমেন্টের নামের সাইজ হল নিম্নলিখিতগুলির যোগফল:
- ডকুমেন্টের পাথে প্রতিটি কালেকশন আইডি ও ডকুমেন্ট আইডির সাইজ
- ১৬ অতিরিক্ত বাইট
my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ users/jeff/tasks সাবকালেকশনে থাকা ডকুমেন্টের ক্ষেত্রে, ডকুমেন্টের নামের সাইজ হল ৬ + ৫ + ৬ + ১১ + ১৬ = ৪৪ বাইট:
usersকালেকশন আইডির জন্য ৬ বাইটjeffডকুমেন্ট আইডির জন্য ৫ বাইটtasksকালেকশন আইডির জন্য ৬ বাইটmy_task_idডকুমেন্ট আইডির জন্য ১১ বাইট- ১৬ অতিরিক্ত বাইট
ফিল্ড ভ্যালুর সাইজ
নিচের সারণিতে ধরন অনুযায়ী ফিল্ড ভ্যালুর সাইজ দেখানো হয়েছে।
| প্রকার | আকার |
|---|---|
| অ্যারে | এর ভ্যালুর সাইজের যোগফল |
| Boolean | ১ বাইট |
| বাইট | বাইট দৈর্ঘ্য |
| তারিখ এবং সময় | ৮ বাইট |
| ফ্লোটিং-পয়েন্ট নম্বর | ৮ বাইট |
| ভৌগোলিক পয়েন্ট | ১৬ বাইট |
| পূর্ণসংখ্যা | ৮ বাইট |
| ম্যাপ | ম্যাপের সাইজ, ডকুমেন্টের সাইজ যেভাবে গণনা করা হয় সেই একই পদ্ধতিতে গণনা করা হয় |
| ফাঁকা | ১ বাইট |
| রেফারেন্স | ডকুমেন্টের নামের সাইজ |
| টেক্সট স্ট্রিং | UTF-8 এনকোড করা বাইটের সংখ্যা + ১ |
| ভেক্টর | প্রতি ডাইমেনশনে ৮ বাইট |
যেমন, done নামের একটি বুলিয়ান ফিল্ড ৬ বাইট ব্যবহার করবে:
doneফিল্ডের নামের জন্য ৫ বাইট- বুলিয়ান ভ্যালুর জন্য ১ বাইট
ডকুমেন্টের সাইজ
ডকুমেন্টের সাইজ হল নিম্নলিখিতগুলির যোগফল:
- ডকুমেন্টের নামের সাইজ
- প্রতিটি ফিল্ডের নামের স্ট্রিং সাইজের যোগফল
- প্রতিটি ফিল্ড ভ্যালুর সাইজের যোগফল
- ৩২টি অতিরিক্ত বাইট
এই উদাহরণটি users/jeff/tasks সাবকালেকশনে থাকা একটি ডকুমেন্টের জন্য
যার স্ট্রিং ডকুমেন্ট আইডি হল my_task_id:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
ফিল্ডের মোট সাইজ হল ৭১ বাইট:
| ফিল্ডের নাম ও ভ্যালু | বাইটে ফিল্ড সাইজ |
|---|---|
"type": "Personal" |
ফিল্ডের নামের জন্য ১৪ ৫ + ফিল্ডের স্ট্রিং ভ্যালুর জন্য ৯ |
"done": false |
ফিল্ডের নামের জন্য 6 5 + ফিল্ডের বুলিয়ান ভ্যালুর জন্য ১ |
"priority": 1 |
ফিল্ডের নামের জন্য ১৭ ৯ + ফিল্ডের পূর্ণসংখ্যা মানের জন্য ৮ |
"description": "Learn Cloud Firestore" |
ফিল্ডের নামের জন্য ৩৪ ১২ + ফিল্ডের স্ট্রিং ভ্যালুর জন্য ২২ |
তাই ডকুমেন্টের সাইজ হল ৪৪ + ৭১ + ৩২ = ১৪৭ বাইট:
- ডকুমেন্টের নামের জন্য ৪৪ বাইট
- ফিল্ডের জন্য ৭১ বাইট
- ৩২টি অতিরিক্ত বাইট
ইনডেক্স এন্ট্রি সাইজ
সিঙ্গেল-ফিল্ড ও কম্পোজিট ইন্ডেক্সের জন্য ইন্ডেক্স এন্ট্রি সাইজ এইভাবে গণনা করা হয়।
সিঙ্গেল-ফিল্ড ইন্ডেক্স এন্ট্রি সাইজ
সিঙ্গেল-ফিল্ড ইন্ডেক্স এন্ট্রির সাইজ নির্ভর করে ইন্ডেক্সটি কোনও কালেকশন বা কালেকশন গ্রুপের জন্য স্কোপ করা হয়েছে কিনা তার উপর।
সংগ্রহের সুযোগ
কালেকশন স্কোপ সহ সিঙ্গল-ফিল্ড ইন্ডেক্সে কোনও এন্ট্রির সাইজ হল নিম্নলিখিতগুলির যোগফল:
- ইনডেক্স করা ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইনডেক্স করা ডকুমেন্টের পেরেন্ট ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইনডেক্স করা ফিল্ডের নামের স্ট্রিং সাইজ
- ইনডেক্স করা ফিল্ড ভ্যালুর সাইজ
- ৩২ অতিরিক্ত বাইট
users/jeff/tasks সাব-কালেকশনে my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ
একটি ডকুমেন্ট বিবেচনা করুন:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
কালেকশন স্কোপ সহ সিঙ্গল-ফিল্ড ইন্ডেক্সের জন্য যা done
ফিল্ড ইন্ডেক্স করে, এই ইন্ডেক্সে এন্ট্রির মোট সাইজ হল ১০৯ বাইট:
users/jeff/tasks/my_task_idডকুমেন্টের নামের জন্য ৪৪ বাইট- পেরেন্ট ডকুমেন্টের নামের জন্য ২৭ বাইট
users/jeff doneফিল্ডের নামের জন্য ৫ বাইট- বুলিয়ান ফিল্ড ভ্যালুর জন্য ১ বাইট
- ৩২টি অতিরিক্ত বাইট
কালেকশন গ্রুপের স্কোপ
কালেকশন গ্রুপ স্কোপ সহ সিঙ্গেল-ফিল্ড ইনডেক্সে কোনও এন্ট্রির সাইজ হল এগুলির যোগফল:
- ইনডেক্স করা ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইন্ডেক্স করা ফিল্ডের নামের স্ট্রিং সাইজ
- ইনডেক্স করা ফিল্ড ভ্যালুর সাইজ
- ৪৮টি অতিরিক্ত বাইট
users/jeff/tasks সাব-কালেকশনে my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ
একটি ডকুমেন্ট বিবেচনা করুন:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
কালেকশন গ্রুপ স্কোপ সহ সিঙ্গল-ফিল্ড ইন্ডেক্সের জন্য যা done
ফিল্ড ইন্ডেক্স করে, এই ইন্ডেক্সে এন্ট্রির মোট সাইজ হল ৯৮ বাইট:
users/jeff/tasks/my_task_idডকুমেন্টের নামের জন্য ৪৪ বাইটdoneফিল্ডের নামের জন্য ৫ বাইট- বুলিয়ান ফিল্ড ভ্যালুর জন্য ১ বাইট
- ৪৮টি অতিরিক্ত বাইট
কম্পোজিট ইন্ডেক্স এন্ট্রি সাইজ
কম্পোজিট ইন্ডেক্সে কোনও এন্ট্রির সাইজ নির্ভর করে ইন্ডেক্সটি কোনও কালেকশন বা কালেকশন গ্রুপের মধ্যে সীমাবদ্ধ কিনা তার উপর।
সংগ্রহের সুযোগ
কালেকশন স্কোপ সহ কম্পোজিট ইন্ডেক্সে ইন্ডেক্স এন্ট্রির সাইজ হল এগুলির যোগফল:
- ইনডেক্স করা ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইনডেক্স করা ডকুমেন্টের পেরেন্ট ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইনডেক্স করা ফিল্ড ভ্যালুর যোগফল
- ৩২টি অতিরিক্ত বাইট
users/jeff/tasks সাব-কালেকশনে my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ
একটি ডকুমেন্ট বিবেচনা করুন:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
কালেকশন স্কোপ সহ কম্পোজিট ইন্ডেক্সের ক্ষেত্রে, যা done এবং
priority ফিল্ড (উভয়ই ঊর্ধ্বক্রম) ইন্ডেক্স করে, এই ইন্ডেক্সে এন্ট্রির মোট সাইজ হল
১১২ বাইট:
users/jeff/tasks/my_task_idডকুমেন্টের নামের জন্য ৪৪ বাইট- পেরেন্ট ডকুমেন্টের নামের জন্য ২৭ বাইট
users/jeff - বুলিয়ান ফিল্ড ভ্যালুর জন্য ১ বাইট
- পূর্ণসংখ্যা ফিল্ডের মানের জন্য ৮ বাইট
- ৩২টি অতিরিক্ত বাইট
কালেকশন গ্রুপের স্কোপ
কালেকশন গ্রুপ স্কোপ সহ কম্পোজিট ইন্ডেক্সে ইন্ডেক্স এন্ট্রির সাইজ হল এগুলির যোগফল:
- ইনডেক্স করা ডকুমেন্টের ডকুমেন্টের নামের সাইজ
- ইনডেক্স করা ফিল্ড ভ্যালুর যোগফল
- ৩২টি অতিরিক্ত বাইট
users/jeff/tasks সাব-কালেকশনে my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ
একটি ডকুমেন্ট বিবেচনা করুন:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
কালেকশন গ্রুপ স্কোপ সহ কম্পোজিট ইন্ডেক্সের ক্ষেত্রে, যা done এবং
priority ফিল্ড (উভয়ই ঊর্ধ্বক্রম) ইন্ডেক্স করে, এই ইন্ডেক্সে ইন্ডেক্স এন্ট্রির মোট সাইজ হল
৮৫ বাইট:
users/jeff/tasks/my_task_idডকুমেন্টের নামের জন্য ৪৪ বাইট- বুলিয়ান ফিল্ড ভ্যালুর জন্য ১ বাইট
- পূর্ণসংখ্যা ফিল্ডের মানের জন্য ৮ বাইট
- ৩২টি অতিরিক্ত বাইট
টেক্সট সার্চ ইন্ডেক্স এন্ট্রি সাইজ
ইন্ডেক্সে টেক্সট সার্চ ইন্ডেক্স এন্ট্রির সাইজ হল:
- কালেকশনের নামের স্ট্রিং সাইজ
- ডকুমেন্ট আইডি ভ্যালুর সাইজ
- ইনডেক্স করা ফিল্ড ভ্যালু থেকে বাইটের যোগফল (x2)
- সাধারণ মেটাডেটার জন্য অতিরিক্ত ৪৮ বাইট
tasks সংগ্রহে my_task_id আইডি সহ কোনও ডকুমেন্টের জন্য
ইনসার্ট ইভেন্টের উদাহরণ বিবেচনা করুন:
description-এ টেক্সট সার্চ ইন্ডেক্স এন্ট্রির মোট সাইজ হল ১০৫ বাইট
এর উপর ভিত্তি করে:
tasksকালেকশনের নামের জন্য ৬ বাইট- ডকুমেন্ট আইডি ভ্যালুর জন্য ১১ বাইট
- ৪৪ বাইট,
descriptionফিল্ড x২-এর জন্য ২২ বাইটের উপর ভিত্তি করে - সাধারণ মেটাডেটার জন্য অতিরিক্ত ৪৮ বাইট
জিওস্পেশিয়াল ইনডেক্স এন্ট্রি সাইজ
কোনও ইনডেক্সে জিওস্পেশিয়াল ইনডেক্স এন্ট্রির সাইজ হল নিম্নলিখিতগুলির যোগফল:
- কালেকশনের নামের স্ট্রিং সাইজ
- ডকুমেন্ট আইডি ভ্যালুর সাইজ
- প্রতিটি ইন্ডেক্স করা জিও পয়েন্টের জন্য ১২৮ বাইট
- সাধারণ মেটাডেটার জন্য অতিরিক্ত ৪৮ বাইট
places সংগ্রহে my_place আইডি সহ কোনও ডকুমেন্টের জন্য
ইনসার্ট ইভেন্টের উদাহরণ বিবেচনা করুন:
{ "type": "Restaurant", "visited": false, "priority": 1, "location": GeoPoint(longitude, latitude) }
location-এ জিওস্পেশিয়াল ইন্ডেক্স এন্ট্রির মোট সাইজ হল
১৯২ বাইট, যা এগুলির উপর ভিত্তি করে তৈরি:
- কালেকশনের নামের জন্য ৭ বাইট
places - ডকুমেন্ট আইডির জন্য ৯ বাইট
locationফিল্ডের জন্য ১২৮ বাইট- সাধারণ মেটাডেটার জন্য অতিরিক্ত ৪৮ বাইট