اندازه فضای ذخیره‌سازی

این صفحه اندازه فضای ذخیره‌سازی اسناد، فیلدها، و مدخل‌های نمایه را در Cloud Firestore شرح می‌دهد.

می‌توانید در صفحه قیمت‌گذاری با هزینه‌های این فضای ذخیره‌سازی آشنا شوید.

اندازه بند

اندازه رشته‌ها به‌صورت تعداد بایت‌های کدگذاری‌شده UTF-8 + ۱ محاسبه می‌شود.

موارد زیر به‌صورت رشته ذخیره می‌شوند:

  • نام کلکسیون
  • نام فیلدها
  • مقادیر فیلد رشته (ازجمله _id)

برای مثال:

  • نام مجموعه tasks از ۵ بایت + ۱ بایت استفاده می‌کند که درمجموع ۶ بایت می‌شود.
  • نام فیلد description از ۱۱ بایت + ۱ بایت استفاده می‌کند که درمجموع ۱۲ بایت می‌شود.

اندازه مقدار فیلد

جدول زیر اندازه مقادیر فیلد را براساس نوع نشان می‌دهد.

نوع اندازه
آرایه مجموع اندازه‌های مقادیر آن
بولی ‫۱ بایت
داده‌های دودویی طول بایت + ۱ برای زیرنوع غیرعمومی (غیرصفر)
تاریخ ‫۸ بایت
دونفره ‫۸ بایت
Double128 ‫۱۶ بایت
عدد صحیح ۳۲ بیتی ‫۴ بایت
عدد صحیح ۶۴ بیتی (طولانی) ‫۸ بایت
شیء مجموع اندازه‌های رشته هر نام فیلد و اندازه‌های هر مقدار فیلد در شیء جاسازی‌شده
کلید Min ‫۱ بایت
کلید Max ‫۱ بایت
Null ‫۱ بایت
عبارت باقاعده (طول الگو + ۱) + (طول گزینه‌ها + ۱)
مُهر زمان ‫۸ بایت
تار تعداد بایت‌های کدبندی‌شده UTF-8 +‏ ۱

برای مثال، فیلد بولی با نام done از ۶ بایت استفاده می‌کند:

  • ۵ بایت برای نام فیلد done
  • ۱ بایت برای مقدار بولی

اندازه سند

اندازه سند مجموع موارد زیر است:

این مثال برای سندی در مجموعه tasks است:

{
  "_id": "my_task_id",
  "type": "Personal",
  "done": false,
  "priority": 1,
  "description": "Learn Cloud Firestore"
}

اندازه کل فیلدها ۷۸ بایت است:

نام و مقدار فیلد اندازه فیلد به بایت
"_id": "my_task_id" ۱۱ برای مقدار رشته فیلد
"type": "Personal" ‫۱۴
۵ برای نام فیلد + ۹ برای مقدار رشته فیلد
"done": false ‫۶
۵ برای نام فیلد + ۱ برای مقدار بولی فیلد
"priority": 1 ‫۱۷
۹ برای نام فیلد + ۴ برای مقدار عدد صحیح ۳۲ بیتی فیلد
"description": "Learn Cloud Firestore" 34
۱۲ برای نام فیلد + ۲۲ برای مقدار رشته فیلد

بنابراین اندازه سند ۱۳۲ بایت است (۶ + ۷۸ + ۴۸):

  • ۶ برای نام مجموعه
  • ۷۸ بایت برای فیلدها
  • ‫۴۸ بایت اضافی

اندازه ورودی نمایه

اندازه ورودی نمایه در نمایه مجموع موارد زیر است:

سندی را در مجموعه tasks درنظر بگیرید:

{
  "_id": "my_task_id",
  "type": "Personal",
  "done": false,
  "priority": 1,
  "description": "Learn Cloud Firestore"
}

برای نمایه‌ای در فیلدهای done و priority (هر دو صعودی)، اندازه کل ورودی نمایه در این نمایه ۷۰ بایت است:

  • ‫۶ بایت برای نام مجموعه tasks
  • ‫۱۱ بایت برای مقدار فیلد _id
  • ۱ بایت برای مقدار فیلد بولی
  • ۴ بایت برای مقدار فیلد عدد صحیح ۳۲ بیتی
  • ‫۴۸ بایت اضافی

برای نمایه‌های پراکنده، اگر سندی هیچ‌کدام از فیلدها را نداشته باشد، هیچ ورودی نمایه‌ای ایجاد نمی‌شود. اگر سندی حداقل یکی از فیلدهای نمایه‌شده را داشته باشد، ورودی نمایه‌ای با فیلدهای نمایه‌شده غایب تنظیم‌شده روی NULL ایجاد می‌شود.

تغییر اندازه ورودی رویداد جاری‌سازی

اندازه رویداد جریان تغییر مجموع موارد زیر است:

  • مجموع اندازه رشته نام مجموعه (x2).
  • برای رویدادهای درج و به‌روزرسانی سند:
    • مجموع اندازه رشته هر نام فیلد در fullDocument یا updateDescription (به‌جز _id).
    • مجموع اندازه هر مقدار فیلد در fullDocument یا updateDescription. (شامل _id).
  • اگر برای تراکنش‌های چندسندی قابل‌اعمال باشد، ۲۴ بایت اضافی برای lsid و txnNumber.
  • ‫۹۲ بایت دیگر

مثالی را برای رویداد درج برای سند در مجموعه تکالیف درنظر بگیرید:

{
  "_id": { <Resume Token> },
  "operationType": "insert",
  "clusterTime": <Timestamp>,
  "wallTime": <ISODate>,
  "ns": {
     "db": "db",
     "coll": "tasks"
  },
  "documentKey": {
     "_id": "my_task_id"
  },
  "fullDocument": {
     "_id": "my_task_id",
     "description": "Learn Cloud Firestore"
  },
}

اندازه کل رویداد جریان تغییر ۱۴۹ بایت است:

  • ۹۲ بایت برای فراداده عمومی
  • ۱۲ بایت براساس نام مجموعه tasks (۶ بایت) * ۲
  • ‫۱۱ بایت برای مقدار فیلد _id
  • ۱۲ بایت برای نام فیلد description
  • ۲۲ بایت برای مقدار فیلد description

اندازه ورودی نمایه جستجوی نوشتار

اندازه ورودی نمایه جستجوی نوشتار در نمایه برابر است با مجموع:

  • اندازه رشته نام مجموعه
  • اندازه مقدار _id
  • مجموع بایت‌ها از مقادیر فیلد نمایه‌شده (x2)
  • ۴۸ بایت اضافی برای فراداده عمومی

مثالی را برای رویداد درج برای سندی با _id my_task_id در مجموعه tasks درنظر بگیرید:

{
    "_id": "my_place",
     "type": "Restaurant",
     "visited": false,
     "priority": 1,
     "location": GeoPoint(longitude, latitude)
}

اندازه کل ورودی نمایه جستجوی نوشتار در description ۱۰۵ بایت است براساس:

  • ‫۶ بایت برای نام مجموعه tasks
  • ۱۱ بایت برای مقدار _id
  • ۴۴ بایت، براساس ۲۲ بایت برای فیلد description ضربدر ۲
  • ۴۸ بایت اضافی برای فراداده عمومی

اندازه ورودی نمایه زمین‌مکانی

اندازه ورودی نمایه زمین‌مکانی در نمایه برابر است با مجموع:

  • اندازه رشته نام مجموعه
  • اندازه مقدار _id
  • ۱۲۸ بایت برای هر نقطه جغرافیایی نمایه‌شده
  • ۴۸ بایت اضافی برای فراداده عمومی

مثالی را برای رویداد درج برای سندی با _id my_place در مجموعه places درنظر بگیرید:

{
    "_id": "my_place",
     "type": "Restaurant",
     "visited": false,
     "priority": 1,
     "location": GeoPoint(longitude, latitude)
}

اندازه کل ورودی نمایه زمین‌مکانی در location ۱۹۲ بایت است که براساس موارد زیر محاسبه می‌شود:

  • ۷ بایت برای نام مجموعه places
  • ۹ بایت برای شناسه سند
  • ‫۱۲۸ بایت برای فیلد location
  • ۴۸ بایت اضافی برای فراداده عمومی

حالا چه می‌شود

درباره قیمت‌گذاری بیشتر بدانید.