एक डेटाबेस चुनें: क्लाउड फायरस्टोर या रीयलटाइम डेटाबेस

फायरबेस दो क्लाउड-आधारित, क्लाइंट-सुलभ डेटाबेस समाधान प्रदान करता है जो रीयलटाइम डेटा सिंकिंग का समर्थन करते हैं:

  • क्लाउड फायरस्टोर मोबाइल ऐप विकास के लिए फायरबेस का नवीनतम डेटाबेस है। यह एक नए, अधिक सहज डेटा मॉडल के साथ रीयलटाइम डेटाबेस की सफलताओं पर आधारित है। क्लाउड फायरस्टोर में रीयलटाइम डेटाबेस की तुलना में अधिक समृद्ध, तेज क्वेरी और स्केल भी शामिल हैं।

  • रीयलटाइम डेटाबेस फायरबेस का मूल डेटाबेस है। यह मोबाइल ऐप्स के लिए एक कुशल, कम-विलंबता समाधान है जिसके लिए रीयलटाइम में ग्राहकों के बीच समन्वयित स्थिति की आवश्यकता होती है।

फायरबेस किस डेटाबेस की सिफारिश करता है?

डेटाबेस समाधान की आपकी पसंद कई कारकों पर निर्भर करेगी, लेकिन जब कुछ विशेषताओं की बात आती है, तो हम अनुशंसा कर सकते हैं कि कौन सा डेटाबेस आपके लिए सही है।

दोनों समाधान प्रदान करते हैं:

  • क्लाइंट-प्रथम SDK, जिसमें परिनियोजन और रखरखाव के लिए कोई सर्वर नहीं है
  • रीयलटाइम अपडेट
  • नि: शुल्क स्तर, फिर आप जो उपयोग करते हैं उसके लिए भुगतान करें

मुख्य विचार

दोनों डेटाबेस के लिए सामान्य मुख्य विशेषताओं से परे, इस बारे में सोचें कि नीचे सूचीबद्ध कोई भी या सभी विचार आपके ऐप्स की सफलता को कैसे प्रभावित करेंगे।

डेटाबेस की भूमिका
मेरा ऐप डेटाबेस का उपयोग करता है ...
बुनियादी क्वेरी के साथ डेटा को मुख्य रूप से सिंक्रोनाइज़ करना।
यदि आपको उन्नत क्वेरी, सॉर्टिंग और लेन-देन की आवश्यकता नहीं है, तो हम रीयलटाइम डेटाबेस की अनुशंसा करते हैं।
उन्नत पूछताछ, छँटाई और लेनदेन।
यदि आपको अपने डेटा के साथ जटिल इंटरैक्शन की आवश्यकता है, उदाहरण के लिए ईकॉमर्स ऐप्स में, तो हम Cloud Firestore की अनुशंसा करते हैं।
डेटा पर संचालन
मेरे ऐप का डेटाबेस उपयोग ऐसा दिखता है ...
कुछ जीबी या उससे कम डेटा जो बार-बार बदलता है।
यदि आपका ऐप डिजिटल व्हाइटबोर्ड ऐप जैसे छोटे अपडेट की एक स्ट्रीम भेज रहा है, तो हम रीयलटाइम डेटाबेस की अनुशंसा करते हैं।
सैकड़ों GB से TB तक का डेटा जो बदले जाने की तुलना में बहुत अधिक बार पढ़ा जाता है।
बहुत बड़े डेटा सेट के लिए, और जब बैच संचालन की अक्सर आवश्यकता होती है, तो हम Cloud Firestore की अनुशंसा करते हैं।
डेटा मॉडल
मैं अपने डेटा को इस रूप में संरचित करना पसंद करता हूं ...
एक साधारण JSON पेड़।
JSON असंरचित डेटा के लिए, हम रीयलटाइम डेटाबेस का सुझाव देते हैं।
संग्रह में व्यवस्थित दस्तावेज़।
संरचित दस्तावेज़ों और संग्रहों के लिए, हम Cloud Firestore की अनुशंसा करते हैं।
उपलब्धता
मेरी उपलब्धता की जरूरत है...
99.999% की अत्यधिक उच्च अपटाइम गारंटी।
यदि उपलब्धता अत्यंत महत्वपूर्ण है, उदाहरण के लिए ईकॉमर्स ऐप्स में, तो हम Cloud Firestore की अनुशंसा करते हैं।
कम से कम 99.95% अपटाइम की गारंटी।
जब बहुत अधिक लेकिन महत्वपूर्ण उपलब्धता स्वीकार्य नहीं है, तो हम क्लाउड फायरस्टोर या रीयलटाइम डेटाबेस की अनुशंसा करते हैं।
स्थानीय डेटा पर ऑफ़लाइन प्रश्न
मेरे ऐप को सीमित या बिना कनेक्टिविटी वाले उपकरणों पर क्वेरी करने की आवश्यकता होगी...
बार बार।
उपयोगकर्ता के ऑफ़लाइन होने पर स्थानीय डेटा पर परिष्कृत क्वेरी क्षमताओं के लिए, हम Cloud Firestore की अनुशंसा करते हैं।
शायद ही कभी या कभी नहीं।
यदि आप उम्मीद करते हैं कि आपके उपयोगकर्ता लगातार ऑनलाइन रहेंगे, तो हम Cloud Firestore या Realtime Database की अनुशंसा करते हैं।
डेटाबेस उदाहरणों की संख्या
मेरी व्यक्तिगत परियोजनाओं में, मुझे उपयोग करने की आवश्यकता है ...
कई डेटाबेस, उदाहरण के लिए प्रत्येक प्रमुख ग्राहक के लिए एक डेटाबेस।
चूंकि यह आपको एक ही Firebase प्रोजेक्ट में एकाधिक डेटाबेस जोड़ने देता है, इसलिए हम रीयलटाइम डेटाबेस की अनुशंसा करते हैं।
बस एक ही डेटाबेस।
यदि आपको एकल डेटाबेस की आवश्यकता है, तो हम या तो Cloud Firestore या Realtime Database की अनुशंसा करते हैं।

विचार करने के लिए कुछ अन्य महत्वपूर्ण बातें क्या हैं?

पिछले प्रमुख विचारों के बारे में सोचने के बाद, आप एक डेटाबेस चुनने के लिए तैयार हो सकते हैं। यदि आप अभी भी पेशेवरों और विपक्षों का वजन कर रहे हैं, तो यह खंड क्लाउड फायरस्टोर और रीयलटाइम डेटाबेस के बीच अन्य अंतरों को शामिल करता है।

डेटा मॉडल

रीयलटाइम डेटाबेस और क्लाउड फायरस्टोर दोनों नोएसक्यूएल डेटाबेस हैं।

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
डेटा को एक बड़े JSON ट्री के रूप में संग्रहीत करता है।
  • सरल डेटा स्टोर करना बहुत आसान है।
  • जटिल, पदानुक्रमित डेटा को बड़े पैमाने पर व्यवस्थित करना कठिन होता है।

रीयलटाइम डेटाबेस डेटा मॉडल के बारे में और जानें।

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

Cloud Firestore डेटा मॉडल के बारे में और जानें।

रीयलटाइम और ऑफ़लाइन समर्थन

दोनों में मोबाइल-फर्स्ट, रीयलटाइम एसडीके हैं और दोनों ऑफ़लाइन-तैयार ऐप्स के लिए स्थानीय डेटा स्टोरेज का समर्थन करते हैं।

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
Apple Android क्लाइंट के लिए ऑफ़लाइन समर्थन। Apple, Android और वेब क्लाइंट के लिए ऑफ़लाइन समर्थन।

उपस्थिति

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

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
उपस्थिति का समर्थन किया। मूल रूप से समर्थित नहीं है। आप क्लाउड फ़ंक्शंस का उपयोग करके क्लाउड फायरस्टोर और रीयलटाइम डेटाबेस को सिंक करके उपस्थिति के लिए रीयलटाइम डेटाबेस के समर्थन का लाभ उठा सकते हैं। क्लाउड फायरस्टोर में उपस्थिति बनाएं देखें।

क्वेरी

क्वेरी के माध्यम से किसी भी डेटाबेस से डेटा पुनर्प्राप्त करें, सॉर्ट करें और फ़िल्टर करें।

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

लिखता है और लेनदेन

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
बुनियादी लेखन और लेनदेन संचालन।
  • सेट और अपडेट ऑपरेशंस के माध्यम से डेटा लिखें
  • लेन-देन एक विशिष्ट डेटा सबट्री पर परमाणु होते हैं।
उन्नत लेखन और लेनदेन संचालन।
  • सेट और अद्यतन संचालन के साथ-साथ सरणी और संख्यात्मक ऑपरेटरों जैसे उन्नत परिवर्तनों के माध्यम से डेटा संचालन लिखें
  • लेनदेन डेटाबेस के किसी भी हिस्से से डेटा को परमाणु रूप से पढ़ और लिख सकते हैं।

विश्वसनीयता और प्रदर्शन

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

अनुमापकता

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
स्केलिंग के लिए शार्किंग की आवश्यकता होती है।
  • एक डेटाबेस में लगभग 200,000 समवर्ती कनेक्शन और 1,000 राइट्स/सेकंड के लिए स्केल करें। इससे आगे स्केलिंग के लिए आपके डेटा को कई डेटाबेस में साझा करने की आवश्यकता होती है।
  • डेटा के अलग-अलग टुकड़ों के लिए लिखने की दरों पर कोई स्थानीय सीमा नहीं है।
स्केलिंग स्वचालित है।
  • पूरी तरह से स्वचालित रूप से तराजू। वर्तमान में, स्केलिंग सीमा लगभग 1 मिलियन समवर्ती कनेक्शन और 10,000 राइट/सेकंड है। हम भविष्य में इन सीमाओं को बढ़ाने की योजना बना रहे हैं।
  • व्यक्तिगत दस्तावेज़ों या अनुक्रमितों के लिए लिखने की दरों की सीमाएँ हैं।

सुरक्षा

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

मूल्य निर्धारण

दोनों समाधान स्पार्क और ब्लेज़ मूल्य निर्धारण योजनाओं पर उपलब्ध हैं।

रीयलटाइम डेटाबेस क्लाउड फायरस्टोर
केवल बैंडविड्थ और भंडारण के लिए शुल्क, लेकिन उच्च दर पर।

रीयलटाइम डेटाबेस मूल्य निर्धारण योजनाओं के बारे में और पढ़ें।

आपके डेटाबेस में किए गए संचालन (पढ़ें, लिखें, हटाएं) और, कम दर, बैंडविड्थ और भंडारण पर मुख्य रूप से शुल्क।

Cloud Firestore ऐप इंजन प्रोजेक्ट्स के लिए दैनिक खर्च सीमा का समर्थन करता है, यह सुनिश्चित करने के लिए कि आप उन लागतों से अधिक नहीं हैं जिनके साथ आप सहज हैं।

क्लाउड फायरस्टोर मूल्य निर्धारण योजनाओं के बारे में और पढ़ें।

क्लाउड फायरस्टोर और रीयलटाइम डेटाबेस का उपयोग करना

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

रीयलटाइम डेटाबेस और क्लाउड फायरस्टोर दोनों में उपलब्ध सुविधाओं के बारे में अधिक जानें।

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

उम्मीद है कि इस तुलना ने आपको फ़ायरबेस डेटाबेस समाधान पर व्यवस्थित करने में मदद की है। अब आप सीख सकते हैं कि अपने फायरबेस प्रोजेक्ट्स में डेटाबेस कैसे जोड़ें।

  • क्लाउड फायरस्टोर के लिए, क्लाउड फायरस्टोर के साथ आरंभ करें पर एक नज़र डालें।
  • रीयलटाइम डेटाबेस के लिए, अपने प्लेटफ़ॉर्म के लिए प्रारंभ करें विषय पढ़ें: Apple , Android , C++ , Unity , Web , या REST