מצב מקורי: מכסות ומגבלות

בדף הזה מתוארות מכסות הבקשות והמגבלות של מהדורת Enterprise ב-Cloud Firestore במצב Native.

שימוש בתוכנית ללא תשלום

‫Cloud Firestore במצב Native מציע רמת שירות חינמית שמאפשרת לכם להתחיל להשתמש ב-Cloud Firestore במצב Native ללא עלות. בטבלה הבאה מפורטים הסכומים של התוכנית החינמית.

הסכומים של רמת השימוש החינמית מתעדכנים מדי יום ומתאפסים בחצות לפי שעון החוף המערבי.

השימוש בתוכנית החינמית מוגבל למסד נתונים אחד Cloud Firestore לכל פרויקט. מסד הנתונים הראשון שנוצר בפרויקט בלי מסד נתונים ברמת שימוש חינמית יקבל את רמת השימוש החינמית. אם מסד הנתונים עם רמת השירות החינמית נמחק, מסד הנתונים הבא שייווצר יקבל את רמת השירות החינמית.

תוכנית ללא תשלום מכסה
נתונים מאוחסנים ‫1 GiB
קריאת יחידות ‫50,000 ביום
יחידות עדכון בזמן אמת ‫50,000 ביום
יחידות מידה ‫40,000 ביום
העברת נתונים יוצאת ‫10GiB לחודש

מגבלות סטנדרטיות

בטבלאות הבאות מפורטות המגבלות שחלות על Cloud Firestore במצב Native. אלה מגבלות קשיחות, אלא אם צוין אחרת.

מסדי נתונים

מגבלה פרטים
מספר מסדי הנתונים המקסימלי לכל פרויקט

100

אפשר לפנות לתמיכה כדי לבקש להגדיל את המכסה הזו.

המספר המקסימלי של מסדי נתונים עם מפתחות הצפנה בניהול הלקוח (CMEK) לכל פרויקט

0

כברירת מחדל, המכסה היא 0 כי התכונה הזו נמצאת מאחורי רשימת היתרים. כדי לבקש להגדיל את המכסה, צריך למלא את הטופס לבקשת גישה ל-CMEK.

אוספים, מסמכים ושדות

מגבלה פרטים
הגבלות על מזהי קולקציות
  • חייבים להיות תווים חוקיים בקידוד UTF-8
  • האורך המקסימלי הוא 1,500 בייט
  • לא יכול להכיל קו נטוי (/)
  • לא יכול להכיל רק נקודה אחת (.) או שתי נקודות (..)
  • אי אפשר להתאים לביטוי הרגולרי __.*__
העומק המקסימלי של אוספי משנה 100
הגבלות על מזהי מסמכים
  • חייבים להיות תווים חוקיים בקידוד UTF-8
  • האורך המקסימלי הוא 1,500 בייט
  • לא יכול להכיל קו נטוי (/)
  • לא יכול להכיל רק נקודה אחת (.) או שתי נקודות (..)
  • אי אפשר להתאים לביטוי הרגולרי __.*__
  • אם מייבאים ישויות Datastore למסד נתונים של Firestore, מזהי ישויות מספריים מוצגים כ-__id[0-9]+__
הגודל המקסימלי של שם מסמך ‎6 KiB
הגודל המקסימלי של מסמך ‫1MiB (1,048,576 בייטים)
מגבלות על שמות שדות
  • חייבים להיות תווים חוקיים בקידוד UTF-8
  • אי אפשר להתאים לביטוי הרגולרי __.*__
הגודל המקסימלי של שם שדה ‫1,500 בייטים
מגבלות על נתיבי שדות
  • חובה להפריד בין שמות השדות באמצעות נקודה אחת (.)
  • יכול להיות שיועבר כמחרוזת של פלחים שמופרדים באמצעות נקודה (.), כאשר כל פלח הוא שם שדה פשוט או שם שדה במירכאות (מוגדר בהמשך).
שם שדה פשוט הוא שם שבו כל התנאים הבאים מתקיימים:
  • מכיל רק את התווים a-z, A-Z, 0-9 וקו תחתון (_)
  • לא מתחיל ב-0-9
שם שדה שמוקף במירכאות מתחיל ומסתיים בתו גרש (`). לדוגמה, foo.`x&y` מתייחס לשדה x&y שמוטמע בשדה foo. כדי ליצור שם שדה עם התו גרש הפוך, צריך להוסיף לפניו את התו לוכסן הפוך (\). כדי לפשט את התהליך, אפשר להעביר את נתיב השדה כאובייקט FieldPath (לדוגמה, ראו JavaScript FieldPath) במקום להשתמש בשמות שדות עם גרשיים.
הגודל המקסימלי של נתיב שדה ‫1,500 בייטים
הגודל המקסימלי של ערך בשדה ‫1 MiB – 89 בייטים (1,048,487 בייטים)
העומק המקסימלי של שדות במפה או במערך

20

שדות של מפה ומערך מוסיפים רמה אחת לעומק הכולל של אובייקט. לדוגמה, לאובייקט הבא יש עומק כולל של שלוש רמות:


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

כתיבה ועסקאות

מגבלה פרטים
גודל מקסימלי של בקשת API ‎10 MiB
מגבלת זמן לעסקה ‫270 שניות, עם זמן תפוגה של 60 שניות ללא פעילות
המספר המקסימלי של טרנספורמציות של שדות שאפשר לבצע במסמך יחיד בפעולה Commit או בעסקה 500

אינדקסים

מגבלה פרטים
מספר האינדקסים המקסימלי למסד נתונים

מספר הערכים המקסימלי באינדקס לכל מסמך

40,000

המספר המקסימלי של שדות באינדקס 100
הגודל המקסימלי של רשומה באינדקס

7.5 KiB

הסכום המקסימלי של גדלי הערכים באינדקס של מסמך

‎8 MiB

אורך חיים (TTL)

מגבלה פרטים
מספר מקסימלי של הגדרות של שדה יחיד למסד נתונים

הגדרה אחת ברמת השדה יכולה להכיל כמה הגדרות לאותו שדה. לדוגמה, חריגה מאינדוקס של שדה יחיד ומדיניות TTL באותו שדה נחשבות להגדרה אחת של שדה במסגרת המגבלה.

ייצוא/ייבוא

פעולות ייבוא וייצוא מנוהלות כפופות למגבלות הבאות:

מגבלה פרטים
המספר המקסימלי הכולל של בקשות ייצוא וייבוא לפרויקט שמותר לשלוח בדקה 20
המספר המקסימלי של פעולות ייצוא וייבוא בו-זמנית 50
מספר הפילטרים המקסימלי של מזהי אוספים לבקשות ייצוא ויבוא 100

כללי אבטחה

מגבלה פרטים
מספר השיחות המקסימלי עם exists(), עם get() ועם getAfter() לכל בקשה
  • ‫10 לבקשות של מסמך יחיד ולבקשות של שאילתות.
  • ‫20 לקריאות של כמה מסמכים, לעסקאות ולפעולות כתיבה באצווה. המגבלה הקודמת של 10 חלה גם על כל פעולה.

    לדוגמה, נניח שאתם יוצרים בקשת כתיבה באצווה עם 3 פעולות כתיבה, וכללי האבטחה שלכם משתמשים ב-2 קריאות לגישה למסמך כדי לאמת כל כתיבה. במקרה הזה, כל פעולת כתיבה משתמשת ב-2 מתוך 10 קריאות הגישה שלה, ובקשת הכתיבה באצווה משתמשת ב-6 מתוך 20 קריאות הגישה שלה.

חריגה מאחת מהמגבלות האלה תגרום לשגיאה 'ההרשאה נדחתה'.

יכול להיות שחלק מהקריאות לגישה למסמכים יישמרו במטמון, וקריאות שנשמרו במטמון לא ייספרו במסגרת המגבלות.

העומק המקסימלי של משפט match מקונן 10
אורך הנתיב המקסימלי, בפלחי נתיב, שמותר בתוך קבוצה של הצהרות match מוטמעות 100
מספר המשתנים המקסימלי של לכידת נתיבים שמותר להשתמש בהם בתוך קבוצה של match הצהרות מקוננות 20
עומק מקסימלי של בקשות להפעלת פונקציה 20
מספר הארגומנטים המקסימלי של הפונקציה 7
מספר מקסימלי של let קשירות משתנים לכל פונקציה 10
מספר מקסימלי של קריאות לפונקציות רקורסיביות או מחזוריות ‫0 (אין הרשאה)
המספר המקסימלי של ביטויים שמוערכים לכל בקשה 1,000
הגודל המקסימלי של קבוצת כללים יש שני מגבלות גודל שחלות על קבוצות כללים:
  • מגבלה של 256KB על הגודל של מקור הטקסט של קבוצת הכללים שפורסמה ממסוף Firebase או מ-CLI באמצעות firebase deploy.
  • מגבלה של 250KB על הגודל של קבוצת הכללים המהודרת שמתקבלת כש-Firebase מעבד את המקור והופך אותו לפעיל בקצה העורפי.