कोई डेटा स्ट्रक्चर चुनें

याद रखें, Cloud Firestore में अपना डेटा स्ट्रक्चर करते समय, आपके पास कुछ अलग विकल्प होते हैं:

  • दस्तावेज़
  • एक से ज़्यादा कलेक्शन
  • दस्तावेज़ों के अलग-अलग सब-कलेक्शन

हर विकल्प के फ़ायदों पर ध्यान दें, क्योंकि वे आपके इस्तेमाल के उदाहरण से जुड़े हैं. इस गाइड में, हैरारकी के हिसाब से डेटा के स्ट्रक्चर के कुछ उदाहरण दिए गए हैं.

दस्तावेज़ों में नेस्ट किया गया डेटा

दस्तावेज़ों में अरे या मैप जैसे मुश्किल ऑब्जेक्ट को नेस्ट किया जा सकता है.

  • फ़ायदे: अगर आपके पास डेटा की आसान और तय की गई सूचियां हैं, जिन्हें आपको अपने दस्तावेज़ों में रखना है, तो इसे सेट अप करना और आपके डेटा स्ट्रक्चर को आसान बनाना है.
  • सीमाएं: यह दूसरे विकल्पों की तरह बढ़ाने लायक नहीं है, खास तौर पर तब जब आपका डेटा समय के साथ बढ़ता है. बड़ी या बढ़ती हुई सूचियों के साथ, दस्तावेज़ भी बड़ा होता है. इस वजह से, दस्तावेज़ वापस पाने में ज़्यादा समय लग सकता है.
  • इस्तेमाल का संभावित उदाहरण क्या है? उदाहरण के लिए, किसी चैट ऐप्लिकेशन में किसी उपयोगकर्ता के हाल ही में इस्तेमाल किए गए तीन चैट रूम, उसकी प्रोफ़ाइल में नेस्ट की गई सूची के तौर पर सेव किए जा सकते हैं.
  • प्यारा
    • नाम :
      पहला : "एडा"
      पिछला : "लवलेस"
      जन्म की तारीख : 1815
      रूम :
      0 : "सॉफ़्टवेयर चैट"
      1 : "प्रसिद्ध हस्तियां"

उप-संग्रह

अगर आपके पास ऐसा डेटा है जो समय के साथ बढ़ सकता है, तो दस्तावेज़ों में कलेक्शन बनाए जा सकते हैं.

  • फ़ायदे: आपकी सूचियों का आकार बढ़ने के साथ-साथ, पैरंट दस्तावेज़ का साइज़ नहीं बदलता. आपको सब-कलेक्शन पर क्वेरी की सभी सुविधाएं भी मिलती हैं. साथ ही, सब-कलेक्शन में कलेक्शन ग्रुप क्वेरी भी जारी की जा सकती हैं.
  • सीमाएं: उप-संग्रह को आसानी से नहीं मिटाया जा सकता.
  • इस्तेमाल का संभावित उदाहरण क्या है? उदाहरण के लिए, उसी चैट ऐप्लिकेशन में, चैट रूम के दस्तावेज़ों में उपयोगकर्ताओं या मैसेज का कलेक्शन बनाया जा सकता है.
  • विज्ञान
    • सॉफ़्टवेयर
      नाम : "सॉफ़्टवेयर चैट"
      • उपयोगकर्ता
        • प्यारा
          पहला : "ऐडा"
          आखिरी : "लवलेस"
        • राइड करें
          पहले : "सैली"
          आखिरी : "राइड"`


    • ऐस्ट्रोफ़िज़िक्स
      • ...

रूट-लेवल के कलेक्शन

अलग-अलग डेटा सेट को व्यवस्थित करने के लिए, अपने डेटाबेस के रूट लेवल पर कलेक्शन बनाएं.

  • फ़ायदे: रूट-लेवल के कलेक्शन कई-से-कई संबंधों के लिए अच्छे होते हैं. साथ ही, ये हर कलेक्शन में असरदार क्वेरी उपलब्ध कराते हैं.
  • सीमाएं: जैसे-जैसे आपका डेटाबेस बढ़ता जाएगा, उसे हासिल करने की प्रक्रिया मुश्किल होती जाती है.
  • इस्तेमाल का संभावित उदाहरण क्या है? उदाहरण के लिए, एक ही चैट ऐप्लिकेशन में, आप उपयोगकर्ताओं के लिए एक संग्रह और रूम और मैसेज के लिए दूसरा संग्रह बना सकते हैं.
  • उपयोगकर्ता
    • प्यारा
      पहला : "एडा"
      पिछली बार : "लवलेस"
      जन्म : 1815
    • राइड
      पहले : "सैली"
      पिछली बार : "राइड"
      जन्म : 1951
  • कमरे
    • सॉफ़्टवेयर
      • मैसेज
        • message1
          from : "aloveless"
          content : "..."
        • message2
          from : "sride"
          content : "..."