Catch up on highlights from Firebase at Google I/O 2023. Learn more

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

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

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

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

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

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

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

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

प्रमुख विचार

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

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

किन अन्य महत्वपूर्ण बातों पर ध्यान देना चाहिए?

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

डेटा मॉडल

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

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

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

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

क्लाउड फायरस्टोर डेटा मॉडल के बारे में अधिक जानें।

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

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

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

उपस्थिति

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

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

क्वेरी

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

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

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

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

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

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

अनुमापकता

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

सुरक्षा

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

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

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

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

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

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

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

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

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

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

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

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

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