कोई डेटाबेस चुनें: Cloud Firestore या रीयल टाइम डेटाबेस

Firebase, क्लाउड-आधारित दो ऐसे दस्तावेज़ डेटाबेस उपलब्ध कराता है जिन्हें क्लाइंट ऐक्सेस कर सकता है. बुध नए ग्राहकों को Cloud Firestore के साथ शुरुआत करने का सुझाव दें:

  • Cloud Firestore, एंटरप्राइज़-ग्रेड JSON के साथ काम करने वाला सुझाया गया है यह 2, 50,000 से ज़्यादा डेवलपर का भरोसेमंद दस्तावेज़ है. यह इन लोगों के लिए सही है ऐसे रिच डेटा मॉडल वाले ऐप्लिकेशन जिनके लिए क्वेरी करने की योग्यता, स्केलेबिलिटी, और ज़्यादा उपलब्धता. इससे क्लाइंट को इंटरनेट के बिना, इंतज़ार का समय कम होने के साथ-साथ सिंक करने की सुविधा भी मिलती है डेटा ऐक्सेस करते हैं.

  • रीयलटाइम डेटाबेस, क्लासिक Firebase JSON डेटाबेस है. यह इन लोगों के लिए सही है ऐसे आसान डेटा मॉडल वाले ऐप्लिकेशन जिनके लिए, आसानी से खोजने की ज़रूरत होती है और इंतज़ार का समय कम रखना पड़ता है के साथ सिंक करने की सुविधा मिलती है.

इसके अलावा, किन बातों का ध्यान रखना ज़रूरी है?

पहले ध्यान देने वाली ज़रूरी बातों के बारे में सोचने के बाद, शायद आप इन बातों को डेटाबेस चुनें. अगर आपको अब भी फ़ायदे और कमियां समझ आ रही हैं, तो इस सेक्शन में Cloud Firestore और रीयलटाइम डेटाबेस के बीच अंतर.

डेटा मॉडल

रीयलटाइम डेटाबेस और Cloud Firestore, दोनों NoSQL डेटाबेस हैं.

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
डेटा को दस्तावेज़ों के कलेक्शन के तौर पर सेव करता है.
  • सामान्य डेटा को दस्तावेज़ों में आसानी से सेव किया जा सकता है. ये दस्तावेज़, JSON से काफ़ी मिलते-जुलते होते हैं.
  • जटिल, हैरारकी वाले डेटा को बड़े पैमाने पर व्यवस्थित करना आसान है. इसके लिए दस्तावेज़ों के सब-कलेक्शन.
  • इसके लिए, डेटा को कम करने और डीनॉर्मलाइज़ेशन के कम इस्तेमाल की ज़रूरत होती है.

ज़्यादा जानने के लिए, Cloud Firestore डेटा मॉडल.

डेटा को एक बड़े JSON ट्री के तौर पर सेव करता है.
  • सामान्य डेटा को सेव करना बहुत आसान होता है.
  • जटिल, हैरारकी वाले डेटा को बड़े पैमाने पर व्यवस्थित करना मुश्किल होता है.

ज़्यादा जानने के लिए, रीयल टाइम डेटाबेस डेटा मॉडल.

रीयल टाइम और ऑफ़लाइन सहायता

दोनों में, मोबाइल पर काम करने वाले रीयल टाइम SDK टूल हैं. साथ ही, दोनों में ऑफ़लाइन इस्तेमाल के लिए तैयार ऐप्लिकेशन.

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
Apple, Android, और वेब क्लाइंट के लिए ऑफ़लाइन सहायता. Apple और Android क्लाइंट के लिए ऑफ़लाइन सहायता.

मौजूदगी

यह जानना उपयोगी हो सकता है कि क्लाइंट कब ऑनलाइन है या ऑफ़लाइन. Firebase रीयलटाइम डेटाबेस, क्लाइंट कनेक्शन की स्थिति रिकॉर्ड कर सकता है और अपडेट दे सकता है हर बार क्लाइंट के कनेक्शन की स्थिति में बदलाव होता है.

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
यह सुविधा, नेटिव तौर पर काम नहीं करती. रीयलटाइम डेटाबेस के Cloud Firestore और रीयलटाइम डेटाबेस को सिंक करके, Cloud के फ़ंक्शन बिल्ड देखें Cloud Firestore में मौजूद रहेगा. मौजूदगी की सुविधा उपलब्ध है.

क्वेरी की जा रही है

क्वेरी के ज़रिए दोनों में से किसी भी डेटाबेस से डेटा वापस पाएं, क्रम से लगाएं, और फ़िल्टर करें.

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
कपाउंड के साथ इंडेक्स की गई क्वेरी क्रम से लगाना और फ़िल्टर करना.
  • फ़िल्टर की चेन बनाने के साथ-साथ, फ़िल्टर करने और क्रम से लगाने के लिए, यहां दिया गया प्रॉपर्टी किस क्वेरी का इस्तेमाल किया जा सकता है.
  • क्वेरी में बहुत कम जानकारी होती है: ये सिर्फ़ किसी खास कलेक्शन वाले दस्तावेज़ दिखाती हैं और सब-कलेक्शन डेटा न दिखाएं.
  • क्वेरी में हमेशा पूरे दस्तावेज़ दिखने चाहिए.
  • क्वेरी डिफ़ॉल्ट रूप से इंडेक्स की जाती हैं: क्वेरी की परफ़ॉर्मेंस आपके डेटासेट का नहीं, बल्कि आपके नतीजे के सेट का साइज़.
डीप क्वेरी के लिए सीमित विकल्प क्रम से लगाने और फ़िल्टर करने की सुविधाएं.
  • क्वेरी किसी प्रॉपर्टी के हिसाब से क्रम में लगाई जा सकती हैं या उस पर फ़िल्टर कर सकती हैं, दोनों नहीं.
  • क्वेरी डिफ़ॉल्ट रूप से डीप होती हैं: वे हमेशा पूरी सबट्री दिखाती हैं.
  • क्वेरी, JSON ट्री में अलग-अलग लीफ़-नोड वैल्यू तक किसी भी लेवल पर डेटा को ऐक्सेस कर सकती हैं.
  • क्वेरी के लिए इंडेक्स की ज़रूरत नहीं होती; हालांकि, कुछ क्वेरी की परफ़ॉर्मेंस जैसे-जैसे आपका डेटासेट बढ़ता है, वैसे-वैसे घटता जाता है.

लिखें और लेन-देन

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
लिखने और लेन-देन से जुड़ी बेहतर कार्रवाइयां.
  • डेटा से जुड़ी कार्रवाइयां लिखना उन्हें सेट और अपडेट ऑपरेशन, साथ ही, अपग्रेड किए गए बदलावों, जैसे कि अरे और न्यूमेरिक ऑपरेटर का इस्तेमाल नहीं किया जा सकता.
  • लेन-देन डेटाबेस के किसी भी हिस्से से डेटा को अपने-आप पढ़ और लिख सकता है.
लिखने और ट्रांज़ैक्शन से जुड़ी सामान्य कार्रवाइयां.
  • डेटा लिखना सेट और अपडेट ऑपरेशन की मदद से बनाया गया है.
  • लेन-देन एक खास डेटा सबट्री पर ऐटॉमिक होते हैं.

विश्वसनीयता और परफ़ॉर्मेंस

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
Cloud Firestore एक क्षेत्रीय और कई इलाकों में उपलब्ध समाधान है, जो अपने-आप चालू हो जाता है.
  • इंतज़ार का समय कम रखने वाला समाधान, जिसमें जवाब देने का सामान्य समय 30 से ज़्यादा नहीं होना चाहिए मिसे.
  • आपका डेटा अलग-अलग इलाकों में कई डेटा सेंटर में सेव करके रखता है. इससे यह पक्का किया जा सकता है कि दुनिया भर में बढ़ाए जा सकने की क्षमता और मज़बूत विश्वसनीयता.
  • दुनिया भर के क्षेत्रीय या एक से ज़्यादा क्षेत्रों वाले कॉन्फ़िगरेशन में उपलब्ध.
Cloud Firestore की परफ़ॉर्मेंस और विश्वसनीयता से जुड़ी विशेषताओं के बारे में ज़्यादा जानें के नियमों का पालन करें.
रीयल टाइम डेटाबेस एक रीजनल सलूशन है.
  • रीजनल कॉन्फ़िगरेशन में उपलब्ध है. डेटाबेस, ज़ोनल तक सीमित हैं एक क्षेत्र में उपलब्धता.
  • इंतज़ार का समय बहुत कम है. आम तौर पर, जवाब देने का समय 10 मि॰से॰ से ज़्यादा नहीं होना चाहिए. अगर आप बार-बार स्थिति सिंक करने के लिए आदर्श विकल्प.
रीयलटाइम डेटाबेस की परफ़ॉर्मेंस और विश्वसनीयता से जुड़ी विशेषताओं के बारे में ज़्यादा जानें के नियमों का पालन करें.

चालू रहने का समय

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
अपटाइम परफ़ॉर्मेंस बहुत ज़्यादा है.
  • सामान्य अपटाइम परफ़ॉर्मेंस 99.999% है.
  • अगर खरीदारी के लिए प्रॉडक्ट उपलब्ध कराना सबसे ज़रूरी है, जैसे कि ई-कॉमर्स ऐप्लिकेशन में, Cloud Firestore का इस्तेमाल करने के लिए.
हाई अपटाइम परफ़ॉर्मेंस.
  • सामान्य अपटाइम परफ़ॉर्मेंस 99.95% है.

बढ़ाए जा सकने की योग्यता

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
स्केलिंग अपने-आप होती है.
  • पूरी तरह से अपने-आप स्केल हो जाता है. स्केलिंग की सीमाएं एक साथ 10 लाख कनेक्शन और 10,000 राइट/सेकंड. हमारी योजना है कि हम आने वाले समय में इन सीमाओं के बारे में पता चलेगा.
  • अलग-अलग दस्तावेज़ों या इंडेक्स में, लिखने की दरों की सीमाएं होती हैं.
स्केलिंग के लिए, शार्डिंग की ज़रूरत होती है.
  • स्केल को करीब 2,00,000 समवर्ती कनेक्शन और 1,000 राइट/सेकंड में एक डेटाबेस तैयार करता है. इससे ज़्यादा डेटा पाने के लिए, आपको अपना डेटा कई तरह से शेयर करना होगा पर चर्चा करते हैं.
  • डेटा के अलग-अलग हिस्सों के लिए, लिखने की दरों के लिए कोई स्थानीय सीमा नहीं है.

सुरक्षा

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
कैस्केडिंग न होने वाले नियम, जिनमें अनुमति देने और पुष्टि करने की प्रोसेस शामिल होती है.
  • इसके ज़रिए सुरक्षित किए गए मोबाइल SDK टूल से पढ़ता और लिखता है Cloud Firestore के सुरक्षा नियम.
  • इसके ज़रिए सुरक्षित किए गए सर्वर SDK टूल से पढ़ता और लिखता है पहचान और ऐक्सेस मैनेजमेंट (आईएएम).
  • जब तक आप वाइल्डकार्ड का इस्तेमाल नहीं करते, तब तक नियम लागू नहीं होते.
  • नियमों की वजह से क्वेरी में रुकावट आ सकती है: अगर किसी क्वेरी के नतीजों में डेटा मौजूद हो उपयोगकर्ता के पास इसका ऐक्सेस नहीं है, तो पूरी क्वेरी फ़ेल हो जाती है.
कैस्केडिंग नियमों की भाषा, जो अनुमति देने और पुष्टि करने के तरीकों को अलग करती है.

कीमत

दोनों समाधान Spark and Blaze की कीमत के प्लान.

Cloud Firestore पसंदीदा रीयल टाइम डेटाबेस
मुख्य रूप से आपके डेटाबेस में की गई कार्रवाइयों पर लगने वाले शुल्क (पढ़ें, लिखें, मिटाएं) और कम दर पर बैंडविथ और स्टोरेज पाएं.

Cloud Firestore हर दिन के लिए काम करता है खर्च की सीमाएं App Engine प्रोजेक्ट के लिए, यह सुनिश्चित करने के लिए कि आप अपनी लागत सहज महसूस करें.

इसके बारे में और पढ़ें Cloud Firestore के प्राइसिंग प्लान.

यह सिर्फ़ बैंडविड्थ और स्टोरेज के लिए शुल्क लेता है. हालांकि, इससे ज़्यादा शुल्क लिया जाता है दर.

रीयल टाइम डेटाबेस के प्राइसिंग प्लान के बारे में ज़्यादा पढ़ें.

Cloud Firestore और रीयलटाइम डेटाबेस का इस्तेमाल करना

आपके पास एक ही Firebase ऐप्लिकेशन या प्रोजेक्ट में, दोनों डेटाबेस इस्तेमाल करने का विकल्प होता है. दोनों NoSQL डेटाबेस एक जैसे डेटा को स्टोर कर सकते हैं और क्लाइंट लाइब्रेरी रखने के लिए इस्तेमाल किया जा सकता है. पहले बताए गए अंतरों का ध्यान रखें, अगर आपको लगता है कि अपने ऐप्लिकेशन में दोनों डेटाबेस का इस्तेमाल करने के लिए.

रीयलटाइम डेटाबेस, दोनों में उपलब्ध सुविधाओं के बारे में ज़्यादा जानें और Cloud Firestore.

क्या आप डेटाबेस चुनने के लिए तैयार हैं?

उम्मीद है कि इस तुलना से आपको Firebase डेटाबेस समाधान तय करने में मदद मिली होगी. अब आप अपने Firebase प्रोजेक्ट में डेटाबेस जोड़ने का तरीका जान सकते हैं.