اختيار بنية بيانات

تذكَّر أنّه عند تنظيم بياناتك في Cloud Firestore، تتوفّر لك بعض الخيارات المختلفة:

  • المستندات
  • مجموعات متعدّدة
  • المجموعات الفرعية ضمن المستندات

راجِع مزايا كل خيار في ما يتعلّق بحالة الاستخدام. يوضّح هذا الدليل بعض الأمثلة على بنية البيانات التسلسلية.

البيانات المتداخلة في المستندات

يمكنك تداخل عناصر معقّدة، مثل المصفوفات أو الخرائط، داخل المستندات.

  • المزايا: إذا كانت لديك قوائم بيانات بسيطة وثابتة تريد الاحتفاظ بها في مستنداتك، من السهل إعدادها وتنظيم بنية بياناتك.
  • القيود: لا يمكن توسيع نطاق هذا الخيار بقدر الخيارات الأخرى، خاصةً إذا كانت بياناتك تتوسع بمرور الوقت. مع القوائم الأكبر أو المتزايدة، يزداد حجم المستند أيضًا، ما قد يؤدي إلى زيادة أوقات استرجاع المستند.
  • ما هي حالة الاستخدام المحتمَلة؟ في تطبيق محادثات، على سبيل المثال، يمكنك تخزين 3 غرف محادثات زارها المستخدم مؤخرًا كقائمة مضمّنة في ملفه الشخصي.
  • alovelace
    •     name :
            first : "Ada"
            last : "Lovelace"
          born : 1815
          rooms :
            0 : "Software Chat"
            1 : "Famous Figures"
            2 : "Famous SWEs"

المجموعات الفرعية

يمكنك إنشاء مجموعات داخل المستندات عندما تكون لديك بيانات قد تتوسّع بمرور الوقت.

  • المزايا: مع توسّع قوائمك، لا يتغيّر حجم مستند الوالد. يمكنك أيضًا الحصول على إمكانات بحث كاملة في المجموعات الفرعية، ويمكنك إصدار طلبات بحث مجموعات المجموعات في جميع المجموعات الفرعية.
  • القيود: لا يمكنك حذف المجموعات الفرعية بسهولة.
  • ما هي حالة الاستخدام المحتمَلة؟ في تطبيق المحادثة نفسه، مثلاً، يمكنك إنشاء مجموعات من المستخدمين أو الرسائل ضمن مستندات غرفة المحادثة.
  • العلوم
    • software
        name : "software chat"
      • المستخدِمون
        • alovelace
              first : "Ada"
              last : "Lovelace"
        • sride
              first : "Sally"
              last : "Ride"`


    • الفيزياء الفلكية
      • ...

المجموعات على مستوى الجذر

أنشئ مجموعات على مستوى الجذر في قاعدة بياناتك لتنظيم مجموعات بيانات مختلفة.

  • المزايا: إنّ المجموعات على مستوى الجذر مناسبة للعلاقات المتعدّدة بالعديد، كما توفّر طلبات بحث فعّالة ضمن كل مجموعة.
  • القيود: قد يصبح الحصول على البيانات التي تكون هرمية بشكلٍ طبيعي معقدًا بشكلٍ متزايد مع نمو قاعدة بياناتك.
  • ما هي حالة الاستخدام المحتمَلة؟ في تطبيق المحادثة نفسه، على سبيل المثال، يمكنك إنشاء مجموعة واحدة للمستخدمين ومجموعة أخرى للغرف والرسائل.
  • المستخدِمون
    • alovelace
          الاسم الأول : "آدا"
          الاسم الأخير : "لافليس"
          تاريخ الميلاد : 1815
    • sride
          first : "Sally"
          last : "Ride"
          born : 1951
  • غرفة
    • البرامج
      • الرسائل
        • message1
              from : "alovelace"
              content : "..."
        • message2
              from : "sride"
              content : "..."