Firebase, क्लाउड पर आधारित दो ऐसे दस्तावेज़ डेटाबेस उपलब्ध कराता है जिन्हें क्लाइंट ऐक्सेस कर सकते हैं. हम नए ग्राहकों को Cloud Firestore से शुरुआत करने का सुझाव देते हैं:
Cloud Firestore, एंटरप्राइज़-ग्रेड का सुझाया गया JSON-कंपैटिबल दस्तावेज़ डेटाबेस है. इस पर 2,50,000 से ज़्यादा डेवलपर भरोसा करते हैं. यह उन ऐप्लिकेशन के लिए सही है जिनमें क्वेरी करने, बड़े पैमाने पर इस्तेमाल करने, और ज़्यादा उपलब्धता की ज़रूरत होती है. साथ ही, जिनमें रिच डेटा मॉडल होते हैं. यह कम समय में क्लाइंट को सिंक्रनाइज़ करने और ऑफ़लाइन डेटा ऐक्सेस करने की सुविधा भी देता है.
Realtime Database, Firebase का क्लासिक JSON डेटाबेस है. यह उन ऐप्लिकेशन के लिए सही है जिनमें डेटा मॉडल आसान होते हैं. साथ ही, जिनमें आसान लुकअप और कम इंतज़ार के समय में सिंक्रनाइज़ेशन की ज़रूरत होती है. इसके अलावा, यह उन ऐप्लिकेशन के लिए भी सही है जिनमें स्केलेबिलिटी सीमित होती है.
इनके अलावा, किन दूसरी ज़रूरी बातों का ध्यान रखना चाहिए?
ऊपर बताई गई अहम बातों पर विचार करने के बाद, अब आपको डेटाबेस चुनना होगा. अगर आपको अब भी फ़ायदों और नुकसानों के बारे में सोचना है, तो इस सेक्शन में Cloud Firestore और Realtime Database के बीच के अन्य अंतरों के बारे में बताया गया है.
डेटा मॉडल
Realtime Database और Cloud Firestore, दोनों NoSQL डेटाबेस हैं.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
यह दस्तावेज़ों के कलेक्शन के तौर पर डेटा सेव करता है.
Cloud Firestore डेटा मॉडल के बारे में ज़्यादा जानें. |
डेटा को एक बड़े JSON ट्री के तौर पर सेव करता है.
Realtime Database डेटा मॉडल के बारे में ज़्यादा जानें. |
रीयलटाइम और ऑफ़लाइन सहायता
दोनों में मोबाइल-फ़र्स्ट और रीयलटाइम SDK टूल हैं. साथ ही, दोनों ऑफ़लाइन काम करने वाले ऐप्लिकेशन के लिए, लोकल डेटा स्टोरेज की सुविधा देते हैं.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Apple, Android, और वेब क्लाइंट के लिए ऑफ़लाइन सहायता. | Apple और Android क्लाइंट के लिए ऑफ़लाइन सहायता. |
मौजूदगी
इससे यह पता चलता है कि क्लाइंट ऑनलाइन है या ऑफ़लाइन. Firebase Realtime Database क्लाइंट के कनेक्शन की स्थिति को रिकॉर्ड कर सकता है. साथ ही, क्लाइंट के कनेक्शन की स्थिति में बदलाव होने पर, अपडेट दे सकता है.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
यह सुविधा डिफ़ॉल्ट रूप से उपलब्ध नहीं है. Realtime Database में मौजूदगी की सुविधा को बेहतर बनाया जा सकता है. इसके लिए, Cloud Firestore और Realtime Database को Cloud Functions का इस्तेमाल करके सिंक करें. Cloud Firestore में मौजूदगी की सुविधा को बेहतर बनाना लेख पढ़ें. | उपयोगकर्ता की मौजूदगी की जानकारी शेयर करने की सुविधा उपलब्ध है. |
क्वेरी करना
क्वेरी के ज़रिए, किसी भी डेटाबेस से डेटा वापस पाना, उसे क्रम से लगाना, और फ़िल्टर करना.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
कंपाउंड सॉर्टिंग और फ़िल्टरिंग के साथ इंडेक्स की गई क्वेरी.
|
ज़्यादा जानकारी वाली क्वेरी, जिनमें सॉर्ट करने और फ़िल्टर करने की सुविधाएं सीमित होती हैं.
|
लिखने और लेन-देन करने की अनुमतियां
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
डेटा में बदलाव करने और लेन-देन से जुड़ी बेहतर सुविधाएं.
|
लिखने और लेन-देन से जुड़ी बुनियादी कार्रवाइयां.
|
भरोसेमंद और बेहतर परफ़ॉर्मेंस
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Cloud Firestore एक क्षेत्रीय और एक से ज़्यादा क्षेत्रों के लिए उपलब्ध समाधान है, जो अपने-आप स्केल होता है.
|
Realtime Database एक रीजनल समाधान है.
|
चालू रहने का समय
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
बहुत ज़्यादा अपटाइम परफ़ॉर्मेंस.
|
ज़्यादा अपटाइम परफ़ॉर्मेंस.
|
स्केल करने की क्षमता
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
स्केलिंग अपने-आप होती है.
|
स्केलिंग के लिए शार्डिंग ज़रूरी है.
|
सुरक्षा
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
ऐसे नियम जो एक के बाद एक लागू नहीं होते और जिनमें पुष्टि करने और अनुमति देने की सुविधा शामिल होती है.
|
कैस्केडिंग नियमों की ऐसी भाषा जो अनुमति देने और पुष्टि करने की प्रोसेस को अलग करती है.
|
कीमत
ये दोनों समाधान, स्पार्क और ब्लेज़ के स्टोरेज प्लान में उपलब्ध हैं.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
मुख्य तौर पर, आपके डेटाबेस में किए गए ऑपरेशन (पढ़ना, लिखना, मिटाना) के लिए शुल्क लिया जाता है. साथ ही, बैंडविथ और स्टोरेज के लिए कम शुल्क लिया जाता है.
Cloud Firestore, App Engine प्रोजेक्ट के लिए, रोज़ाना के खर्च की सीमा तय करने की सुविधा देता है. इससे यह पक्का किया जा सकता है कि आपका खर्च, आपकी तय की गई सीमा से ज़्यादा न हो. Cloud Firestore शुल्क के प्लान के बारे में ज़्यादा जानें. |
यह सिर्फ़ बैंडविड्थ और स्टोरेज के लिए शुल्क लेता है, लेकिन ज़्यादा दर पर.
Realtime Database शुल्क वाले प्लान के बारे में ज़्यादा जानें. |
Cloud Firestore और Realtime Database का इस्तेमाल करना
एक ही Firebase ऐप्लिकेशन या प्रोजेक्ट में, दोनों डेटाबेस का इस्तेमाल किया जा सकता है. दोनों NoSQL डेटाबेस में एक ही तरह का डेटा सेव किया जा सकता है. साथ ही, क्लाइंट लाइब्रेरी भी एक ही तरह से काम करती हैं. अगर आपको अपने ऐप्लिकेशन में दोनों डेटाबेस का इस्तेमाल करना है, तो पहले बताए गए अंतरों को ध्यान में रखें.
Realtime Database और Cloud Firestore, दोनों में उपलब्ध सुविधाओं के बारे में ज़्यादा जानें.
क्या आपको डेटाबेस चुनना है?
हमें उम्मीद है कि इस तुलना से, आपको Firebase डेटाबेस के किसी समाधान को चुनने में मदद मिली होगी. अब अपने Firebase प्रोजेक्ट में डेटाबेस जोड़ने का तरीका जानें.
- Cloud Firestore के लिए, Cloud Firestore का इस्तेमाल शुरू करना लेख पढ़ें.
- Realtime Database के लिए, अपने प्लैटफ़ॉर्म के हिसाब से 'शुरू करें' विषय पढ़ें: Apple, Android, C++, Unity, Web या REST.