يمكنك استخدام هذا الدليل لفهم حدود Cloud Firestore، والاطّلاع على أسعار Cloud Firestore للحصول على شرح كامل ومفصّل لتكاليف Cloud Firestore، بما في ذلك الأمور التي يجب الانتباه إليها.
مراقبة الاستخدام
لتتبُّع استخدامك لـ Cloud Firestore من وحدة تحكُّم Firebase، انتقِل إلى قواعد البيانات ومساحة التخزين > Firestore > علامة التبويب الاستخدام. يمكنك استخدام لوحة البيانات هذه لقياس معدّل الاستخدام على مدار فترات زمنية مختلفة.
الاستخدام التفصيلي في وحدة تحكّم Google Cloud
عند إنشاء مشروع على Firebase، يتم أيضًا إنشاء مشروع على Google Cloud. تتتبّع صفحتا حصص واجهة برمجة تطبيقات Cloud Firestore و حصص App Engine في وحدة تحكّم Google Cloud معلومات الاستخدام والحصص في Cloud Firestore.
الحصة المجانية
يوفّر Cloud Firestore حصة مجانية تتيح لك البدء بدون أي تكلفة. إذا كنت بحاجة إلى حصة أكبر، عليك تفعيل الفوترة لمشروعك على Google Cloud.
يتم تطبيق الحصص يوميًا وإعادة ضبطها في منتصف الليل تقريبًا بتوقيت المحيط الهادئ.
يلخّص الجدول التالي مقدار الحصة المجانية:
| الفئة المجانية | الحصة |
|---|---|
| البيانات المخزّنة | 1 غيبي بايت |
| قراءات المستندات | 50,000 في اليوم |
| عمليات كتابة المستندات | 20,000 في اليوم |
| عمليات حذف المستندات | 20,000 في اليوم |
| نقل البيانات الصادرة | 10 غيبي بايت في الشهر |
لا تشمل العمليات والميزات التالية الاستخدام المجاني. يجب تفعيل الفوترة لاستخدام هذه الميزات:
- عمليات الحذف وفقًا لـ TTL
- بيانات الاستعادة في نقطة زمنية معيّنة
- الاحتفاظ بنسخة احتياطية من البيانات
- عمليات الاستعادة
- عمليات الاستنساخ
لمزيد من المعلومات حول كيفية فوترة هذه الميزات، يُرجى الاطّلاع على أسعار مساحة التخزين.
الحدود العادية
تعرض الجداول التالية الحدود التي تنطبق على Cloud Firestore. هذه الحدود قصوى ما لم يُذكر خلاف ذلك.
قواعد البيانات
| الحدّ | التفاصيل |
|---|---|
| الحد الأقصى لعدد قواعد البيانات لكل مشروع |
100 يمكنك التواصل مع فريق الدعم لطلب زيادة هذا الحدّ. |
| الحد الأقصى لعدد قواعد بيانات مفاتيح التشفير التي يديرها العميل (CMEK) لكل مشروع |
0 تكون الحصة تلقائيًا 0 لأنّ هذه الميزة متاحة فقط للمستخدمين المدرَجين في القائمة المسموح بها. يمكنك طلب زيادة الحصة من خلال ملء نموذج طلب الوصول إلى CMEK. |
المجموعات والمستندات والحقول
| الحدّ | التفاصيل |
|---|---|
| القيود المفروضة على أرقام تعريف المجموعات |
|
| الحد الأقصى لعمق المجموعات الفرعية | 100 |
| القيود المفروضة على أرقام تعريف المستندات |
|
| الحد الأقصى لحجم اسم المستند | 6 كيبيبايت |
| الحد الأقصى لحجم المستند | 1 ميبيبايت (1,048,576 بايت) |
| القيود المفروضة على أسماء الحقول |
|
| الحد الأقصى لحجم اسم الحقل | 1,500 بايت |
| القيود المفروضة على مسارات الحقول |
`). على سبيل المثال، يشير foo.`x&y` إلى الحقل x&y المضمّن ضمن الحقل foo. لإنشاء اسم حقل باستخدام حرف الفاصلة العليا المائلة، يمكنك إلغاء حرف الفاصلة العليا المائلة باستخدام حرف الشرطة المائلة للخلف (\). لتسهيل الأمر، يمكنك تجنُّب أسماء الحقول المقتبسة من خلال تمرير مسار الحقل كعنصر FieldPath (على سبيل المثال، راجِع JavaScript FieldPath).
|
| الحد الأقصى لحجم مسار الحقل | 1,500 بايت |
| الحد الأقصى لحجم قيمة الحقل | 1 ميغابايت - 89 بايت (1,048,487 بايت) |
| الحد الأقصى لعمق الحقول في خريطة أو مصفوفة | 20 تضيف حقول الخريطة والمصفوفة مستوى واحدًا إلى العمق الإجمالي للعنصر. على سبيل المثال، يحتوي العنصر التالي على إجمالي عمق من ثلاثة مستويات: |
عمليات الكتابة والمعاملات
بالإضافة إلى هذه الحدود، ننصحك أيضًا بالاطّلاع على أفضل الممارسات لتصميم تطبيقات قابلة للتوسّع.
| الحدّ | التفاصيل |
|---|---|
| الحد الأقصى لحجم طلب البيانات من واجهة برمجة التطبيقات | 10 ميبيبايت |
| الحدّ الزمني للمعاملة | 270 ثانية، مع انتهاء صلاحية عدم النشاط بعد 60 ثانية |
الحد الأقصى لعدد عمليات تحويل الحقول التي يمكن إجراؤها على
مستند واحد في عملية Commit أو في
معاملة |
500 |
المؤشرات
تنطبق الحدود التالية على الفهارس ذات الحقل الواحد والفهارس المركّبة:
| الحدّ | التفاصيل |
|---|---|
| الحد الأقصى لعدد الفهارس المركّبة لقاعدة بيانات |
|
| الحد الأقصى لعدد إعدادات الحقل الواحد لقاعدة بيانات |
يمكن أن يحتوي إعداد واحد على مستوى الحقل على إعدادات متعددة للحقل نفسه. على سبيل المثال، يتم احتساب استثناء الفهرسة في حقل واحد وسياسة مدة الصلاحية في الحقل نفسه كإعداد حقل واحد ضمن الحدّ الأقصى. |
|
الحد الأقصى لعدد إدخالات الفهرس لكل مستند |
40,000 عدد إدخالات الفهرس هو مجموع ما يلي لمستند:
لمعرفة كيف يحوّل Cloud Firestore مستندًا ومجموعة من الفهارس إلى إدخالات فهرس، يُرجى الاطّلاع على مثال عدد إدخالات الفهرس هذا. |
| الحد الأقصى لعدد الحقول في الفهرس المركّب | 100 |
| الحد الأقصى لحجم إدخال الفهرس |
7.5 كيبيبايت لمعرفة كيفية احتساب Cloud Firestore لحجم إدخال الفهرس، يُرجى الاطّلاع على حجم إدخال الفهرس. |
| الحد الأقصى لمجموع أحجام إدخالات فهرس المستند |
8 ميبيبايت الحجم الإجمالي هو مجموع ما يلي للمستند: |
| الحد الأقصى لحجم قيمة حقل مفهرَس |
1,500 بايت يتم اقتطاع قيم الحقول التي تزيد عن 1500 بايت. قد تؤدي طلبات البحث التي تتضمن قيم حقول مقتطعة إلى عرض نتائج غير متسقة. |
مدة البقاء (TTL)
| الحدّ | التفاصيل |
|---|---|
| الحد الأقصى لعدد إعدادات الحقل الواحد لقاعدة بيانات |
يمكن أن يحتوي إعداد واحد على مستوى الحقل على إعدادات متعددة للحقل نفسه. على سبيل المثال، يتم احتساب استثناء الفهرسة في حقل واحد وسياسة مدة الصلاحية في الحقل نفسه كإعداد حقل واحد ضمن الحدّ الأقصى. |
تصدير/استيراد
تنطبق الحدود التالية على عمليات الاستيراد والتصدير المُدارة:
| الحدّ | التفاصيل |
|---|---|
| الحد الأقصى لإجمالي عدد طلبات التصدير والاستيراد المسموح بها لمشروع في الدقيقة | 20 |
| الحد الأقصى لعدد عمليات التصدير والاستيراد المتزامنة | 50 |
| الحد الأقصى لعدد فلاتر معرّفات المجموعات لطلبات التصدير والاستيراد | 100 |
قواعد الأمان
| الحدّ | التفاصيل |
|---|---|
الحد الأقصى لعدد طلبات exists() وget() وgetAfter() لكل طلب |
ويؤدي تجاوز أي من الحدّين إلى ظهور خطأ "تم رفض الإذن". قد يتم تخزين بعض طلبات الوصول إلى المستندات مؤقتًا، ولا يتم احتساب الطلبات المخزّنة مؤقتًا ضمن الحدود المسموح بها. |
الحد الأقصى لعمق عبارة match المتداخلة |
10 |
الحد الأقصى لطول المسار، في أجزاء المسار، المسموح به ضمن مجموعة من عبارات match المتداخلة |
100 |
الحد الأقصى لعدد متغيرات التقاط المسار المسموح بها ضمن مجموعة من عبارات match المتداخلة |
20 |
| الحد الأقصى لعمق استدعاء الدالة | 20 |
| الحد الأقصى لعدد وسيطات الدالة | 7 |
الحد الأقصى لعدد عمليات ربط المتغيّرات من النوع let لكل دالة |
10 |
| الحد الأقصى لعدد استدعاءات الدوال المتكررة أو الدورية | 0 (غير مسموح به) |
| الحد الأقصى لعدد التعبيرات التي يتم تقييمها لكل طلب | 1,000 |
| الحدّ الأقصى لحجم مجموعة القواعد | يجب أن تلتزم مجموعات القواعد بحدَّين للحجم:
|
إدارة الإنفاق
للمساعدة في تجنُّب تحصيل رسوم غير متوقّعة في فاتورتك، يمكنك ضبط ميزانيات وتنبيهات شهرية.
تحديد ميزانية شهرية
لتتبُّع تكاليف "Cloud Firestore"، يمكنك إنشاء ميزانية شهرية في وحدة تحكّم "Google Cloud". لن تفرض الميزانيات قيودًا على استخدامك، ولكن يمكنك ضبط تنبيهات لإعلامك عندما تقترب من التكاليف المخطط لها للشهر أو تتجاوزها.
لضبط ميزانية، انتقِل إلى قسم الفوترة في وحدة تحكّم "Google Cloud" وأنشئ ميزانية لحسابك على Cloud Billing. يمكنك استخدام إعدادات التنبيهات التلقائية أو تعديل التنبيهات لإرسال إشعارات بنسب مئوية مختلفة من ميزانيتك الشهرية.
مزيد من المعلومات عن إعداد الميزانيات وتنبيهات الميزانية