يوفر Firebase قاعدتي بيانات للمستندات تستند إلى السحابة ويمكن الوصول إليها من قبل العميل. نقترح أن يبدأ العملاء الجدد بـ Cloud Firestore:
Cloud Firestore هي قاعدة بيانات مستندات متوافقة مع JSON مُقترَحة على مستوى المؤسسات، ويثق بها أكثر من 250,000 مطوّر. وهو مناسب لتطبيقات التي تتضمّن نماذج بيانات غنية تتطلّب إمكانية إجراء طلبات بحث وقابلية التوسّع و توفّرًا عاليًا. ويقدّم أيضًا مزامنة عملاء ذات وقت استجابة منخفض وإمكانية الوصول إلى data بلا إنترنت.
Realtime Database هي قاعدة بيانات JSON الكلاسيكية في Firebase. وهو مناسب لتطبيقات التي تتضمّن نماذج بيانات بسيطة تتطلّب عمليات بحث بسيطة وتزامنًا بوقت استجابة منخفض مع إمكانية توسيع نطاق محدود.
ما هي بعض الأمور المهمة الأخرى التي يجب أخذها في الاعتبار؟
بعد التفكير في العوامل الرئيسية السابقة، قد تكون مستعدًا للقيام بخطوة اختيار قاعدة بيانات. إذا كنت لا تزال تقيّم بين الإيجابيات والسلبيات، سيتناول هذا القسم الاختلافات الأخرى بين Cloud Firestore وRealtime Database.
نموذج البيانات
كل من Realtime Database وCloud Firestore هما قاعدتا بيانات NoSQL.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
تخزين البيانات كمجموعات من المستندات
اطّلِع على مزيد من المعلومات عن نموذج بيانات Cloud Firestore. |
يخزِّن البيانات كشجرة JSON كبيرة.
اطّلِع على مزيد من المعلومات عن نموذج بيانات Realtime Database. |
التوافق مع وضعَي "الوقت الفعلي" و"بلا إنترنت"
يتضمّن كلاهما حِزم تطوير برامج (SDK) مخصّصة للأجهزة الجوّالة تعمل في الوقت الفعلي، ويتوافقان مع ميزة تخزين البيانات على الجهاز لتطبيقات التشغيل بلا إنترنت.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
التوافق مع وضع عدم الاتّصال بالإنترنت لعملاء Apple وAndroid وبرامج الويب | تتوفّر خدمة الدعم بلا اتصال بالإنترنت لعملاء Apple وAndroid. |
التواجد في المنزل
قد يكون من المفيد أن تعرف متى يكون العميل متصلاً بالإنترنت أو غير متصل بالإنترنت. يمكن لخدمة Firebase Realtime Database تسجيل حالة اتصال العميل وتقديم آخر المعلومات في كل مرة تتغيّر فيها حالة اتصال العميل.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
غير متاحة في الأصل. يمكنك الاستفادة من ميزة "التواجد" المتاحة في Realtime Database من خلال مزامنة Cloud Firestore وRealtime Database باستخدام Cloud Functions راجِع مقالة إنشاء ميزة "التواجد" في Cloud Firestore. | الحضور متاح: |
الاستعلام
استرداد البيانات وفرزها وتصفيتها من أي قاعدة بيانات من خلال الاستعلامات.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
طلبات البحث المفهرَسة التي تتضمّن عمليات ترتيب وفلترة معقدة:
|
طلبات البحث المفصّلة التي تتضمّن محدودة
ميزات الترتيب والفلترة:
|
عمليات الكتابة والمعاملات
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
عمليات الكتابة والمعاملات المتقدّمة:
|
عمليات الكتابة والمعاملات الأساسية:
|
الموثوقية والأداء
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Cloud Firestore هو حلّ إقليمي ومتعدد المناطق يتم توسيع نطاقه
تلقائيًا.
|
Realtime Database هو حلّ على مستوى منطقة معيّنة.
|
مدة التشغيل
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
أداء عالٍ للغاية في وقت التشغيل
|
أداء مرتفع في مدة التشغيل:
|
قابلية التوسيع
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
التدرّج تلقائي.
|
يجب تقسيم البيانات إلى أجزاء.
|
الأمان
Cloud Firestore | [ يُفضَّل توفيره ] | Realtime Database |
---|---|---|
قواعد غير متتابعة تجمع بين التفويض والتحقق من الصحة.
|
لغة القواعد المتسلسلة التي تفصل بين التفويض والتحقّق
|
الأسعار
يتوفّر كلا الحلّين في خطط أسعار Spark وBlaze.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
يتم تحصيل الرسوم في المقام الأول على العمليات التي يتم إجراؤها في قاعدة بياناتك
(القراءة والكتابة والحذف)، وبسعر أقل على النطاق الترددي ومساحة التخزين.
تتيح Cloud Firestore حدود الإنفاق اليومية لمشاريع App Engine للتأكّد من عدم تجاوز التكاليف التي تناسبك. اطّلِع على مزيد من المعلومات حول خطط أسعار Cloud Firestore. |
يتم تحصيل رسوم مقابل النطاق الترددي ومساحة التخزين فقط، ولكن بسعرٍ
أعلى.
تعرَّف على المزيد من المعلومات عن خطط أسعار "Realtime Database". |
Cloud Firestore وRealtime Database
يمكنك استخدام كلتا قاعدتَي البيانات ضمن تطبيق Firebase أو مشروعه نفسه. يمكن لكلتا قاعدتَي بيانات NoSQL تخزين الأنواع نفسها من البيانات، وتعمل مكتبات العملاء بطريقة مشابهة. يُرجى مراعاة الاختلافات الموضّحة سابقًا إذا قرّرت استخدام كلتا قاعدتَي البيانات في تطبيقك.
اطّلِع على مزيد من المعلومات حول الميزات المتوفّرة في كلّ من Realtime Database وCloud Firestore.
هل أنت جاهز لاختيار قاعدة بيانات؟
نأمل أن تكون هذه المقارنة قد ساعدتك في الاستقرار على حل قاعدة بيانات Firebase. يمكنك الآن التعرّف على كيفية إضافة قاعدة بيانات إلى مشاريعك على Firebase.
- بالنسبة إلى Cloud Firestore، اطّلِع على مقالة بدء استخدام Cloud Firestore.
- بالنسبة إلى Realtime Database، يُرجى قراءة موضوع "البدء" لمنصتك: Apple أو Android أو C++ أو Unity أو الويب أو REST.