في ما يلي القيود المفروضة على تخزين البيانات وعملياتها في Firebase Realtime Database. لتوسيع نطاق أيّ من هذه الحدود، يمكنك استخدام قواعد بيانات متعددة.
جميع أنحاء العالم
| العملية | الحدّ | الوصف |
|---|---|---|
| عمليات الربط المتزامنة | 200,000* | ويعادل الاتصال المتزامن جهازًا جوّالاً واحدًا أو علامة تبويب متصفّح أو تطبيق خادم متصل بقاعدة البيانات. ولا يشبه هذا العدد إجمالي عدد مستخدمي تطبيقك، لأنّ المستخدمين لا يتصلون جميعًا في الوقت نفسه. على سبيل المثال، عادةً ما يكون عدد الاتصالات المتزامنة في التطبيقات التي تضم 10 ملايين مستخدم نشط شهريًا أقل من 200,000. يعتمد الحد الأقصى لعدد الاتصالات المتزامنة على إجمالي عدد المستخدمين ومتوسط الوقت الذي يقضيه المستخدمون في تطبيقك. ومع ذلك، إذا كنت بحاجة إلى توسيع نطاق هذا الحد، جرِّب استخدام قواعد بيانات متعددة. *الحدّ الأقصى لعدد الاتصالات المتزامنة في خطة Spark هو 100. |
| الردود المتزامنة التي يتم إرسالها من قاعدة بيانات واحدة | ~100,000/ثانية | تشمل الردود عمليات البث والقراءة المتزامنة التي يرسلها الخادم من قاعدة بيانات واحدة في وقت معيّن. يشير الحدّ إلى حِزم البيانات التي تمثّل كل عملية قراءة أو بث فردية، بما في ذلك الإشعارات الفورية، التي يتم إرسالها من قاعدة البيانات. هذه الإرشادات مخصّصة للأحمال المستدامة، ولكن يمكن لقاعدة البيانات التعامل مع الارتفاعات العرضية في عدد الطلبات. |
| عدد دوال Cloud Functions التي يتم تشغيلها من خلال عملية كتابة واحدة | 1,000 أو 500 لكل منطقة في Cloud Functions الإصدار 2 | على الرغم من عدم وجود حد لعدد عمليات القراءة أو الكتابة التي يمكنك تشغيلها من دالة واحدة، يمكن لعملية كتابة واحدة في قاعدة البيانات تشغيل 1000 دالة فقط، أو 500 دالة لكل منطقة في Cloud Functions الإصدار 2.
لا يمكن تشغيل 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 ميغابايت/دقيقة | إجمالي عدد وحدات البايت التي تمت كتابتها من خلال عمليات الكتابة المتزامنة في قاعدة البيانات في أي وقت. |