מגבלות של מסדי נתונים בזמן אמת

אלה ההגבלות על אחסון נתונים ופעולות ב-Firebase Realtime Database. כדי לבצע קנה מידה אל מעבר לאחת מהמגבלות האלה, להשתמש בכמה מסדי נתונים.

גלובלי

פעולה הגבלה תיאור
חיבורים סימולטניים 200,000*

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

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

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

*המגבלה בתוכנית Spark לחיבורים בו-זמנית היא 100.

תשובות שנשלחות בו-זמנית ממקור אחד. ~100,000 לשנייה התשובות כוללות פעולות שידור וקריאה בו-זמניות שנשלחות על ידי השרת ממסד נתונים יחיד בזמן נתון. המגבלה מתייחסת לנתונים חבילות שמייצגות כל פעולת קריאה או שידור בנפרד, כולל התראות שנשלחות ממסד הנתונים. הנחיה זו היא עבור טעינה ממושכת, אבל מסד הנתונים יכול להתמודד עם רצפים גבוהים יותר מדי פעם.
מספר הפונקציות ב-Cloud Functions שהופעלו על ידי כתיבה יחידה 1000; או, עבור Cloud Functions גרסה 2, 500 לכל אזור אין מגבלה על מספר פעולות הקריאה או הכתיבה שאפשר לבצע מפונקציה יחידה, פעולת כתיבה יחידה במסד הנתונים יכולה מפעיל 1,000 פונקציות, או 500 פונקציות לכל אזור בשביל Cloud Functions v2.

ניתן להפעיל את Cloud Functions רק על ידי פעולות כתיבה, וכל יכול גם להפעיל יותר פעולות כתיבה שמפעילות יותר פונקציות (לכל אחד מהם יש פונקציה משלו (1,000 או 500 לכל אזור).

הגודל של אירוע יחיד שמופעל על ידי פעולת כתיבה 1 MB גודל אירוע מורכב מהערכים הבאים:
  1. הנתונים הקיימים במיקום הכתיבה.
  2. ערך העדכון, או דלתא בנתונים הדרושים לכתיבת הנתונים החדשים במיקום.
כתיבת פעולות שגדולות מ-1MB מצליחה במסד הנתונים, אבל לא גורמת להפעלת פונקציה.
העברת נתונים אל Cloud Functions 10MB לשנייה לאורך זמן השיעור של נתוני האירועים שאפשר להעביר אל Cloud Functions.

עץ נתונים

נכס הגבלה תיאור
עומק מקסימלי של צומתי צאצא 32 כל נתיב בעץ הנתונים צריך להיות בעומק של פחות מ-32 רמות.
האורך של מפתח 768 בייטים המפתחות מקודדים ב-UTF-8 ולא יכולים להכיל שורות חדשות או את התווים הבאים:
. $ # [ ] / או כל תווי בקרה של ASCII (0x00 - 0x1F ו-0x7F)
הגודל המקסימלי של מחרוזת 10 MB הנתונים בקידוד UTF-8.

קריאה

תיאור הגבלה הערות
גודל התשובה הבודדת שמוגשת על ידי מסד הנתונים 256 MB גודל הנתונים שהורדתם ממסד הנתונים במיקום יחיד צריך להיות פחות מ-256MB לכל פעולת קריאה.

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

סך כל הצמתים בנתיב עם מאזינים או שאילתות 75 מיליון* לא ניתן להאזין לנתיבים או להריץ עליהם שאילתות עם יותר מ-75 מיליון צמתים, המצטברות. עם זאת, עדיין אפשר להאזין לצמתים צאצאים או לשלוח שאילתות לגביהם. אפשר לנסות להתעמק עמוק יותר לתוך הנתיב או יצירת מאזינים נפרדים או שאילתות חלקים ספציפיים בנתיב.

*לא ניתן להציג נתיבים עם יותר מ-30,000 צמתים בסך הכול מהנתונים במסוף Firebase.

משך הזמן ששאילתה יחידה יכולה לפעול 15 דקות* שאילתה יחידה יכולה לרוץ עד 15 דקות לפני שנכשלה.

*שאילתה אחת שמבוצעת במסוף Firebase יכולה לפעול רק במשך עד עד 5 שניות לפני שנכשלים.

כותב

תיאור הגבלה הערות
שיעור כתיבה 1,000 כתיבות בשנייה המגבלה של פעולות כתיבה לשנייה בפעולה אחת מסד נתונים. אומנם המגבלה לא קשיחה, אבל אם תצברו יותר מ-1,000 כתיבות לשנייה, ייתכן שפעילות הכתיבה שלכם תוגבל.
הגודל של בקשת כתיבה אחת למסד הנתונים 256MB מה-API ל-REST; 16MB מערכות ה-SDK. סך הנתונים בכל פעולת כתיבה צריך להיות קטן מ-256MB. עדכונים עם מספר נתיבים כפופים לאותה מגבלת גודל.
בייטים שנכתבו 64MB לדקה סך הבייטים שנכתבו באמצעות פעולות כתיבה סימולטניות מסד הנתונים בכל זמן נתון.