স্টোরেজ সাইজ গণনা

এই পৃষ্ঠায় Cloud Firestore-এ ডকুমেন্ট, ডকুমেন্টের নাম, ফিল্ড ও ইনডেক্স এন্ট্রির স্টোরেজ সাইজ সম্পর্কে বর্ণনা করা হয়েছে।

আপনি Cloud Firestore মূল্য থেকে এই স্টোরেজের খরচ সম্পর্কে জানতে পারবেন।

স্ট্রিং সাইজ

স্ট্রিংয়ের সাইজ UTF-8 এনকোড করা বাইটের সংখ্যা + ১ হিসেবে গণনা করা হয়।

নিম্নলিখিতগুলি স্ট্রিং হিসেবে স্টোর করা হয়:

  • কালেকশন আইডি
  • স্ট্রিং ডকুমেন্ট আইডি
  • ডকুমেন্টের নাম
  • ফিল্ডের নাম
  • স্ট্রিং ফিল্ডের ভ্যালু

যেমন:

  • কালেকশন আইডি tasks ৫ বাইট + ১ বাইট ব্যবহার করে, অর্থাৎ মোট ৬ বাইট।
  • description ফিল্ডের নাম ১১ বাইট + ১ বাইট ব্যবহার করে, মোট ১২ বাইট।

ডকুমেন্ট আইডি সাইজ

ডকুমেন্ট আইডির সাইজ হয় স্ট্রিং আইডির জন্য স্ট্রিং সাইজ অথবা ইন্টিজার আইডির জন্য ৮ বাইট।

ডকুমেন্টের নামের সাইজ

ডকুমেন্টের নামের সাইজ হল নিম্নলিখিতগুলির যোগফল:

  • ডকুমেন্টের পাথে প্রতিটি কালেকশন আইডি ও ডকুমেন্ট আইডির সাইজ
  • ১৬টি অতিরিক্ত বাইট

users/jeff/tasks সাবকালেকশনে my_task_id স্ট্রিং ডকুমেন্ট আইডি সহ ডকুমেন্টের জন্য, ডকুমেন্ট নামের সাইজ হল ৬ + ৫ + ৬ + ১১ + ১৬ = ৪৪ বাইট:

  • 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" 14
ফিল্ডের নামের জন্য 5 + ফিল্ডের স্ট্রিং ভ্যালুর জন্য 9
"done": false ফিল্ডের নামের জন্য ৬
৫ + ফিল্ডের বুলিয়ান ভ্যালুর জন্য ১
"priority": 1 ফিল্ডের নামের জন্য ১৭
৯ + ফিল্ডের ইন্টিজার ভ্যালুর জন্য ৮
"description": "Learn Cloud Firestore" 34
ফিল্ডের নামের জন্য 12 + ফিল্ডের স্ট্রিং ভ্যালুর জন্য 22

তাই ডকুমেন্টের সাইজ হল ৪৪ + ৭১ + ৩২ = ১৪৭ বাইট:

  • ডকুমেন্টের নামের জন্য ৪৪ বাইট
  • ফিল্ডের জন্য ৭১ বাইট
  • ৩২টি অতিরিক্ত বাইট

ইনডেক্স এন্ট্রির সাইজ

সিঙ্গেল-ফিল্ড ও কম্পোজিট ইনডেক্সের জন্য ইনডেক্স এন্ট্রি সাইজ এইভাবে গণনা করা হয়।

সিঙ্গেল-ফিল্ড ইনডেক্স এন্ট্রির সাইজ

সিঙ্গেল-ফিল্ড ইনডেক্স এন্ট্রির সাইজ নির্ভর করে ইনডেক্সটি কোনও কালেকশন বা কালেকশন গ্রুপের জন্য স্কোপ করা হয়েছে কিনা তার উপর।

কালেকশনের সুযোগ

কালেকশন স্কোপ সহ সিঙ্গল-ফিল্ড ইন্ডেক্সে কোনও এন্ট্রির সাইজ হল নিম্নলিখিতগুলির যোগফল:

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 ফিল্ডের জন্য ১২৮ বাইট
  • সাধারণ মেটাডেটার জন্য অতিরিক্ত ৪৮ বাইট

এর পরে কী করতে হবে

Cloud Firestore-এর দাম সম্পর্কে জানুন।