في ما يلي القيود المفروضة على تخزين البيانات والعمليات في Firebase Realtime Database. لتوسيع نطاق العمل بما يتجاوز أيًا من هذه الحدود، استخدِم قواعد بيانات متعددة.
جميع أنحاء العالم
| العملية | الحدّ | الوصف |
|---|---|---|
| الاتصالات المتزامنة | 200,000* | يعادل الاتصال المتزامن جهازًا جوّالاً واحدًا أو علامة تبويب متصفّح واحدة أو تطبيق خادم واحدًا متصلاً بقاعدة البيانات. وهذا لا يماثل إجمالي عدد مستخدمي تطبيقك، لأنّ المستخدمين لا يتصلون جميعًا في الوقت نفسه. على سبيل المثال، التطبيقات التي تضم 10 ملايين مستخدم نشط شهريًا عادةً ما يكون لديها أقل من 200,000 اتصال متزامن. يعتمد الحد الأقصى لعدد الاتصالات المتزامنة على إجمالي عدد المستخدمين ومتوسط الوقت الذي يقضيه المستخدمون في تطبيقك. ومع ذلك، إذا كنت بحاجة إلى توسيع نطاق قاعدة البيانات بما يتجاوز هذا الحد، يمكنك تجربة استخدام قواعد بيانات متعددة. *الحدّ الأقصى لعدد الاتصالات المتزامنة في خطة Spark هو 100. |
| الردود المتزامنة المرسَلة من قاعدة بيانات واحدة | ~100,000 في الثانية | وتشمل الردود عمليات البث والقراءة المتزامنة التي يرسلها الخادم من قاعدة بيانات واحدة في وقت معيّن. يشير الحدّ إلى حزم البيانات التي تمثّل كل عملية قراءة أو بث فردية، بما في ذلك الإشعارات الفورية، التي يتم إرسالها من قاعدة البيانات. هذه الإرشادات مخصّصة للحِمل المستمر، ولكن يمكن لقاعدة البيانات التعامل مع الارتفاعات العرضية في الحِمل. |
| عدد دوال Cloud التي يتم تشغيلها من خلال عملية كتابة واحدة | 1,000، أو 500 لكل منطقة في الإصدار الثاني من Cloud Functions | على الرغم من عدم وجود حدّ أقصى لعدد عمليات القراءة أو الكتابة التي يمكنك
بدؤها من دالة واحدة، يمكن لعملية كتابة واحدة في قاعدة البيانات
بدء 1,000 دالة فقط، أو 500 دالة لكل منطقة في الإصدار الثاني من Cloud Functions.
لا يمكن تفعيل Cloud Functions إلا من خلال عمليات الكتابة، ويمكن لكل دالة أيضًا تفعيل المزيد من عمليات الكتابة التي تفعّل المزيد من الدوال (لكل منها حدّ أقصى يبلغ 1000 دالة أو 500 دالة لكل منطقة). |
| حجم حدث واحد تم بدؤه من خلال عملية كتابة | 1 ميغابايت | يتكوّن حجم الحدث من القيم التالية:
|
| نقل البيانات إلى Cloud Functions | 10 ميغابايت في الثانية بشكل مستمر | معدّل بيانات الأحداث التي يمكن إعادة توجيهها إلى "Cloud Functions". |
شجرة بيانات
| الموقع | الحدّ | الوصف |
|---|---|---|
| الحد الأقصى لعمق العُقد الثانوية | 32 | يجب أن يكون كل مسار في شجرة البيانات أقل من 32 مستوى. |
| طول المفتاح | 768 بايت | يتم ترميز المفاتيح باستخدام UTF-8 ولا يمكن أن تحتوي على أسطر جديدة أو أي من الأحرف التالية: . $ # [ ] / أو أي أحرف تحكّم بتنسيق ASCII (0x00 - 0x1F و0x7F) |
| الحد الأقصى لحجم السلسلة | 10 ميغابايت | البيانات مرمّزة بمعيار UTF-8. |
عدد مرات القراءة
| الوصف | الحدّ | ملاحظات |
|---|---|---|
| حجم ردّ واحد تقدّمه قاعدة البيانات | 256 ميغابايت | يجب أن يكون حجم البيانات التي يتم تنزيلها من قاعدة البيانات في موقع واحد
أقل من 256 ميغابايت لكل عملية قراءة.
لتنفيذ عملية قراءة في موقع أكبر، جرِّب أحد الخيارات التالية: |
| إجمالي العُقد في مسار يتضمّن مستمعين أو طلبات بحث | 75 مليون* | لا يمكنك الاستماع إلى المسارات التي تحتوي على أكثر من 75 مليون عقدة أو الاستعلام عنها،
بشكل تراكمي. ومع ذلك، سيظل بإمكانك الاستماع إلى العُقد الفرعية أو طلبها. حاوِل التعمّق أكثر في المسار أو إنشاء مستمعين أو طلبات بحث منفصلة لأجزاء أكثر تحديدًا من المسار.
*لا يمكنك عرض المسارات التي تتضمّن أكثر من 30,000 عقدة إجمالية من عارض البيانات في وحدة تحكّم "Firebase". |
| المدة الزمنية التي يمكن أن يستغرقها تنفيذ طلب بحث واحد | 15 دقيقة* | يمكن تشغيل طلب بحث واحد لمدة تصل إلى 15 دقيقة قبل أن يتعذّر تنفيذه.
*يمكن تشغيل طلب بحث واحد في وحدة تحكّم Firebase لمدة تصل إلى 5 ثوانٍ فقط قبل أن يتعذّر تنفيذه. |
الكتابة
| الوصف | الحدّ | ملاحظات |
|---|---|---|
| معدّل الكتابة | 1,000 عملية كتابة في الثانية | الحدّ الأقصى لعمليات الكتابة في الثانية في قاعدة بيانات واحدة على الرغم من أنّ هذا ليس حدًا أقصى، إذا أجريت أكثر من 1,000 عملية كتابة في الثانية، قد يتم تحديد معدّل نشاط الكتابة. |
| حجم طلب كتابة واحد إلى قاعدة البيانات | 256 ميغابايت من REST API و16 ميغابايت من حِزم تطوير البرامج (SDK) | يجب أن يكون إجمالي البيانات في كل عملية كتابة أقل من 256 ميغابايت. وتخضع التعديلات المتعدّدة المسارات لقيود الحجم نفسها. |
| وحدات البايت المكتوبة | 64 ميغابايت في الدقيقة | إجمالي وحدات البايت المكتوبة من خلال عمليات الكتابة المتزامنة على قاعدة البيانات في أي وقت معيّن |