حالت بومی: سهمیه‌ها و محدودیت‌ها

این صفحه سهمیه درخواست‌ها و محدودیت‌های نسخه Enterprise برای Cloud Firestore در حالت Native را شرح می‌دهد.

استفاده رایگان از ردیف

Cloud Firestore در حالت Native یک سطح رایگان ارائه می‌دهد که به شما امکان می‌دهد بدون هیچ هزینه‌ای با Cloud Firestore در حالت Native شروع به کار کنید. مبالغ سطح رایگان در جدول زیر ذکر شده است.

مبالغ ردیف رایگان روزانه اعمال می‌شوند و در نیمه‌شب به وقت اقیانوس آرام بازنشانی می‌شوند.

سطح رایگان فقط برای یک پایگاه داده Cloud Firestore در هر پروژه اعمال می‌شود. اولین پایگاه داده‌ای که در یک پروژه بدون پایگاه داده سطح رایگان ایجاد شود، سطح رایگان را دریافت خواهد کرد. اگر پایگاه داده‌ای که سطح رایگان به آن اعمال شده است حذف شود، پایگاه داده بعدی ایجاد شده سطح رایگان را دریافت خواهد کرد.

سطح رایگان سهمیه
داده‌های ذخیره شده ۱ گیگابایت
واحدها را بخوانید ۵۰،۰۰۰ در روز
واحدهای به‌روزرسانی بلادرنگ ۵۰،۰۰۰ در روز
واحدها را بنویسید ۴۰،۰۰۰ در روز
انتقال داده خروجی ۱۰ گیگابایت در ماه

محدودیت‌های استاندارد

جداول زیر محدودیت‌هایی را که در حالت بومی برای Cloud Firestore اعمال می‌شود نشان می‌دهد. این محدودیت‌ها قطعی هستند، مگر اینکه خلاف آن ذکر شده باشد.

پایگاه‌های داده

حد جزئیات
حداکثر تعداد پایگاه‌های داده در هر پروژه

۱۰۰

برای درخواست افزایش این محدودیت می‌توانید با پشتیبانی تماس بگیرید .

حداکثر تعداد پایگاه‌های داده کلیدهای رمزگذاری مدیریت‌شده توسط مشتری (CMEK) در هر پروژه

0

به طور پیش‌فرض سهمیه ۰ است زیرا این ویژگی در پشت یک لیست مجاز قرار دارد. می‌توانید با پر کردن فرم درخواست دسترسی CMEK ، سهمیه را افزایش دهید.

مجموعه‌ها، اسناد و فیلدها

حد جزئیات
محدودیت‌های مربوط به شناسه‌های مجموعه
  • باید کاراکترهای معتبر UTF-8 باشند
  • نباید بیش از ۱۵۰۰ بایت باشد
  • نمی‌تواند شامل اسلش ( / ) باشد
  • نمی‌تواند صرفاً شامل یک دوره ( . ) یا دو دوره ( .. ) باشد.
  • نمی‌توان عبارت منظم __.*__ را تطبیق داد.
حداکثر عمق زیرمجموعه‌ها ۱۰۰
محدودیت‌های مربوط به شناسه‌های سند
  • باید کاراکترهای معتبر UTF-8 باشند
  • نباید بیش از ۱۵۰۰ بایت باشد
  • نمی‌تواند شامل اسلش ( / ) باشد
  • نمی‌تواند صرفاً شامل یک دوره ( . ) یا دو دوره ( .. ) باشد.
  • نمی‌توان عبارت منظم __.*__ را تطبیق داد.
  • اگر موجودیت‌های Datastore را به پایگاه داده Firestore وارد کنید، شناسه‌های موجودیت عددی به صورت __id[0-9]+__ نمایش داده می‌شوند.
حداکثر اندازه برای نام سند ۶ کیلوبایت
حداکثر اندازه برای یک سند ۱ مگابایت (۱,۰۴۸,۵۷۶ بایت)
محدودیت‌ها در نام فیلدها
  • باید کاراکترهای معتبر UTF-8 باشند
  • نمی‌توان عبارت منظم __.*__ را تطبیق داد.
حداکثر اندازه نام فیلد ۱۵۰۰ بایت
محدودیت‌ها در مسیرهای میدانی
  • باید نام فیلدها را با یک نقطه ( . ) از هم جدا کنید.
  • می‌تواند به صورت رشته‌ای از بخش‌های جدا شده با نقطه ( . ) ارسال شود که هر بخش یا نام فیلد ساده یا نام فیلد دارای علامت نقل قول (که در زیر تعریف شده است) است.
یک نام فیلد ساده، نامی است که همه موارد زیر در آن صادق باشد:
  • فقط شامل کاراکترهای az ، AZ ، 0-9 و زیرخط ( _ ) است
  • با 0-9 شروع نمی‌شود
نام فیلد نقل قول شده با کاراکتر بک تیک ( ` ) شروع و پایان می‌یابد. برای مثال، foo.`x&y` به فیلد x&y که زیر فیلد foo قرار دارد اشاره دارد. برای ساخت نام فیلد با کاراکتر بک تیک، کاراکتر بک تیک را با کاراکتر بک اسلش ( \ ) از بین ببرید. برای راحتی، می‌توانید با ارسال مسیر فیلد به عنوان یک شیء FieldPath از نام فیلدهای نقل قول شده اجتناب کنید ( برای مثال، به FieldPath جاوا اسکریپت مراجعه کنید ).
حداکثر اندازه یک مسیر میدانی ۱۵۰۰ بایت
حداکثر اندازه یک مقدار فیلد ۱ مگابایت - ۸۹ بایت (۱,۰۴۸,۴۸۷ بایت)
حداکثر عمق میدان‌ها در یک نقشه یا آرایه

۲۰

فیلدهای نقشه و آرایه یک سطح به عمق کلی یک شیء اضافه می‌کنند. برای مثال، شیء زیر در مجموع سه سطح عمق دارد:


{
  nested_map: {         #depth 1
    nested_array: [     #depth 2
      {
        foo: "bar"      #depth 3
      }
    ]
  }
}
      

نوشته‌ها و تراکنش‌ها

حد جزئیات
حداکثر اندازه درخواست API ۱۰ مگابایت
محدودیت زمانی برای یک تراکنش ۲۷۰ ثانیه، با زمان انقضای ۶۰ ثانیه‌ای حالت آماده به کار
حداکثر تعداد تبدیل‌های فیلد که می‌توانند روی یک سند واحد در یک عملیات Commit یا در یک تراکنش انجام شوند ۵۰۰

شاخص‌ها

حد جزئیات
حداکثر تعداد ایندکس برای یک پایگاه داده

حداکثر تعداد ورودی‌های فهرست برای هر سند

۴۰،۰۰۰

حداکثر تعداد فیلدها در یک فهرست ۱۰۰
حداکثر اندازه یک ورودی فهرست

۷.۵ کیلوبایت

حداکثر مجموع اندازه‌های ورودی‌های فهرست یک سند

۸ مگابایت

زمان زنده ماندن (TTL)

حد جزئیات
حداکثر تعداد پیکربندی‌های تک فیلدی برای یک پایگاه داده

یک پیکربندی سطح فیلد می‌تواند شامل چندین پیکربندی برای یک فیلد باشد. برای مثال، یک معافیت نمایه‌سازی تک فیلدی و یک سیاست TTL در یک فیلد، به عنوان یک پیکربندی فیلد در محدوده‌ی مجاز محاسبه می‌شوند.

صادرات/واردات

محدودیت‌های زیر برای عملیات واردات و صادرات مدیریت‌شده اعمال می‌شود:

حد جزئیات
حداکثر تعداد کل درخواست‌های خروجی و ورودی برای یک پروژه مجاز در هر دقیقه ۲۰
حداکثر تعداد صادرات و واردات همزمان ۵۰
حداکثر تعداد فیلترهای شناسه مجموعه برای درخواست‌های صادرات و واردات ۱۰۰

قوانین امنیتی

حد جزئیات
حداکثر تعداد فراخوانی‌های exists() ، get() و getAfter() به ازای هر درخواست
  • ۱۰ برای درخواست‌های تک سندی و درخواست‌های استعلام.
  • ۲۰ برای خواندن‌های چند سندی، تراکنش‌ها و نوشتن‌های دسته‌ای. محدودیت قبلی ۱۰ برای هر عملیات نیز اعمال می‌شود.

    برای مثال، تصور کنید که یک درخواست نوشتن دسته‌ای با ۳ عملیات نوشتن ایجاد می‌کنید و قوانین امنیتی شما از ۲ فراخوانی دسترسی به سند برای اعتبارسنجی هر نوشتن استفاده می‌کنند. در این حالت، هر نوشتن از ۲ فراخوانی از ۱۰ فراخوانی دسترسی خود استفاده می‌کند و درخواست نوشتن دسته‌ای از ۶ فراخوانی از ۲۰ فراخوانی دسترسی خود استفاده می‌کند.

تجاوز از هر یک از این محدودیت‌ها منجر به خطای عدم اجازه دسترسی می‌شود.

برخی از فراخوانی‌های دسترسی به سند ممکن است در حافظه پنهان ذخیره شوند و فراخوانی‌های ذخیره شده در حافظه پنهان جزو محدودیت‌ها محسوب نمی‌شوند.

حداکثر عمق عبارت match تو در تو ۱۰
حداکثر طول مسیر، در بخش‌های مسیر، مجاز در مجموعه‌ای از دستورات match تو در تو ۱۰۰
حداکثر تعداد متغیرهای ثبت مسیر مجاز در مجموعه‌ای از دستورات match تو در تو ۲۰
حداکثر عمق فراخوانی تابع ۲۰
حداکثر تعداد آرگومان‌های تابع ۷
حداکثر تعداد متغیرهای let برای هر تابع ۱۰
حداکثر تعداد فراخوانی‌های تابع بازگشتی یا چرخه‌ای ۰ (مجاز نیست)
حداکثر تعداد عبارات ارزیابی شده در هر درخواست ۱۰۰۰
حداکثر اندازه یک مجموعه قوانین مجموعه قوانین باید از دو محدودیت اندازه پیروی کنند:
  • محدودیت ۲۵۶ کیلوبایتی برای اندازه منبع متن مجموعه قوانین منتشر شده از کنسول Firebase یا از رابط خط فرمان (CLI) با استفاده از firebase deploy .
  • محدودیت ۲۵۰ کیلوبایتی برای اندازه مجموعه قوانین کامپایل‌شده که هنگام پردازش منبع توسط فایربیس و فعال کردن آن در بک‌اند ایجاد می‌شود.