שימוש ומגבלות

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

עקוב אחר השימוש שלך

כדי לעקוב אחר השימוש שלך ב-Cloud Firestore, פתח את הכרטיסייה Cloud Firestore Usage במסוף Firebase. השתמש בלוח המחוונים כדי לאמוד את השימוש שלך על פני תקופות זמן שונות.

שימוש מפורט ב-Google Cloud Console

כשאתה יוצר פרויקט Firebase, אתה יוצר גם פרויקט של Google Cloud. דף המכסות של App Engine ב-Google Cloud Console עוקב אחר מידע על השימוש ב-Cloud Firestore ומכסה.

מכסה חינם

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

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

שכבה חינם מִכסָה
נתונים מאוחסנים 1 GiB
מסמך קורא 50,000 ליום
המסמך כותב 20,000 ליום
מסמך מוחק 20,000 ליום
יציאה מרשת 10 GiB לחודש

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

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

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

לְהַגבִּיל פרטים
אילוצים על מזהי אוסף
  • חייבים להיות תווי UTF-8 חוקיים
  • חייב להיות לא יותר מ-1,500 בתים
  • לא יכול להכיל קו נטוי קדימה ( / )
  • לא יכול להכיל רק נקודה אחת ( . ) או נקודות כפולות ( .. )
  • לא ניתן להתאים לביטוי הרגולרי __.*__
עומק מרבי של תת-אוספים 100
אילוצים על מזהי מסמכים
  • חייבים להיות תווי UTF-8 חוקיים
  • חייב להיות לא יותר מ-1,500 בתים
  • לא יכול להכיל קו נטוי קדימה ( / )
  • לא יכול להכיל רק נקודה אחת ( . ) או נקודות כפולות ( .. )
  • לא ניתן להתאים לביטוי הרגולרי __.*__
  • אם אתה מייבא ישויות Datastore למסד נתונים של Firestore, מזהי ישויות מספריים נחשפים כ __id[0-9]+__
גודל מקסימלי עבור שם מסמך 6 KiB
גודל מקסימלי עבור מסמך 1 MiB (1,048,576 בתים)
אילוצים על שמות שדות חייבים להיות תווי UTF-8 חוקיים
גודל מקסימלי של שם שדה 1,500 בתים
אילוצים על שבילי שטח
  • יש להפריד בין שמות שדות עם נקודה אחת ( . )
  • ניתן להעביר כמחרוזת כאשר כל שמות השדות בנתיב פשוטים, אחרת יש להעביר אותם כאובייקט FieldPath ( למשל JavaScript FieldPath )
שם שדה פשוט הוא שם שבו כל הדברים הבאים נכונים:
  • מכיל רק את התווים az , AZ , 0-9 וקו תחתון ( _ )
  • לא מתחיל עם 0-9
גודל מקסימלי של נתיב שדה 1,500 בתים
גודל מקסימלי של ערך שדה 1 MiB - 89 בתים (1,048,487 בתים)
עומק מרבי של שדות במפה או במערך 20

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

לְהַגבִּיל פרטים
מקסימום כתיבה בשנייה למסד נתונים 10,000 (עד 10 MiB לשנייה)*. מגבלה זו תוסר בעתיד, צור קשר עם התמיכה לגישה מוקדמת.
גודל בקשת API מקסימלי 10 MiB
מספר מקסימלי של כתיבה שניתן להעביר לפעולת Commit או לבצע בעסקה 500
המספר המרבי של טרנספורמציות שדות שניתן לבצע על מסמך בודד בפעולת Commit או בטרנזקציה 500
מגבלת זמן לעסקה 270 שניות, עם זמן תפוגה של 60 שניות סרק

גבולות רכים

Cloud Firestore לא מונע ממך לחרוג מהסף שלהלן, אך פעולה זו משפיעה על הביצועים.

גבול רך פרטים
קצב כתיבה מתמשך מרבי למסמך

1 לשנייה

שמירה על קצב כתיבה מעל פעם בשנייה מגדילה את ההשהיה וגורמת לשגיאות מחלוקת. זה לא גבול קשה, ואתה יכול לעבור את הגבול בהתפרצויות קצרות.

קצב כתיבה מקסימלי לאוסף שבו מסמכים מכילים ערכים עוקבים בשדה שנוסף לאינדקס 500 לשנייה

עדכונים בזמן אמת

גבול רך פרטים
מקסימום חיבורים בו-זמניים עבור לקוחות ניידים/אינטרנט לכל מסד נתונים

1,000,000

Cloud Firestore לא מונע ממך לחרוג ממגבלה רכה זו, אך פעולה זו משפיעה מאוד על זמן האחזור ושיעור השגיאות.

אינדקסים

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

לְהַגבִּיל פרטים
מספר מקסימלי של אינדקסים מורכבים עבור מסד נתונים 200
מספר מקסימלי של פטורים על אינדקס של שדה בודד עבור מסד נתונים 200

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

40,000

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

  • מספר ערכי אינדקס בשדה בודד
  • מספר ערכי האינדקס המרוכב

כדי לראות כיצד Cloud Firestore הופך מסמך וקבוצת אינדקסים לערכי אינדקס, ראה דוגמה זו לספירת כניסות באינדקס .

גודל מקסימלי של ערך אינדקס

7.5 KiB

כדי לראות כיצד Cloud Firestore מחשבת את גודל הזנת האינדקס, ראה את גודל הזנת האינדקס .

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

8 MiB

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

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

    1500 בתים

    ערכי שדות מעל 1500 בתים קטועים. שאילתות הכוללות ערכי שדות קטועים עלולות להחזיר תוצאות לא עקביות.

    ייצוא ייבוא

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

    לְהַגבִּיל פרטים
    המספר הכולל המרבי של בקשות ייצוא ויבוא עבור פרויקט מותר לדקה 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
    גודל מקסימלי של ערכת חוקים ערכות הכללים חייבות לציית לשתי מגבלות גודל:
    • מגבלה של 256 KB על גודל מקור הטקסט של ערכת הכללים שפורסם ממסוף Firebase או מה-CLI באמצעות firebase deploy Firebase.
    • מגבלה של 250 קילו-בייט על גודל ערכת הכללים המהודר שנוצרת כאשר Firebase מעבד את המקור והופך אותו לפעיל בקצה האחורי.

    ניהול הוצאות

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

    הגדר תקציב חודשי

    כדי לעקוב אחר עלויות Cloud Firestore שלך, צור תקציב חודשי ב-Google Cloud Console. תקציבים לא יגבילו את השימוש שלך, אבל אתה יכול להגדיר התראות שיודיעו לך כאשר אתה מתקרב או חורג מהעלויות המתוכננות שלך לחודש.

    כדי להגדיר תקציב, עבור לקטע חיוב ב-Google Cloud Console וצור תקציב לחשבון Cloud Billing שלך. אתה יכול להשתמש בהגדרות ברירת המחדל של ההתראות או לשנות את ההתראות כדי לשלוח התראות באחוזים שונים מהתקציב החודשי שלך.

    למידע נוסף על הגדרת תקציבים והתראות תקציב .

    הגדר מגבלת הוצאה יומית

    כדי להגביל את השימוש שלך ב-Cloud Firestore, הגדר מגבלת הוצאה יומית דרך App Engine. App Engine מאפשר לך להגדיר מגבלת הוצאה יומית על משאבים הקשורים ל-App Engine, כולל Cloud Firestore. מגבלת App Engine אינה חלה על כל מוצר אחר של Firebase.