Firebase, क्लाइंट के लिए दो क्लाउड-आधारित दस्तावेज़ डेटाबेस उपलब्ध कराता है. हम नए ग्राहकों को Cloud Firestore से शुरुआत करने का सुझाव देते हैं:
Cloud Firestore, एंटरप्राइज़-ग्रेड का सुझाया गया JSON-कंपैटिबल दस्तावेज़ डेटाबेस है. इस पर 6,00,000 से ज़्यादा डेवलपर भरोसा करते हैं. यह उन ऐप्लिकेशन के लिए सही है जिनमें क्वेरी करने, बड़े पैमाने पर इस्तेमाल करने, और ज़्यादा उपलब्धता की ज़रूरत होती है. साथ ही, जिनमें सटीक डेटा मॉडल होते हैं. यह कम इंतज़ार के समय में क्लाइंट को सिंक करने और ऑफ़लाइन डेटा का ऐक्सेस करने की सुविधा भी देता है.
Realtime Database, क्लासिक Firebase JSON डेटाबेस है. यह उन ऐप्लिकेशन के लिए सही है जिनमें सामान्य डेटा मॉडल होते हैं. साथ ही, जिनमें सामान्य लुकअप और कम समय में डेटा सिंक करने की ज़रूरत होती है. इसके अलावा, जिनमें स्केलेबिलिटी की ज़रूरत कम होती है.
इनके अलावा, किन दूसरी ज़रूरी बातों का ध्यान रखना चाहिए?
ऊपर बताई गई अहम बातों पर विचार करने के बाद, अब आपको डेटाबेस चुनना होगा. अगर आपको अब भी फ़ायदों और नुकसानों के बारे में सोचना है, तो इस सेक्शन में Cloud Firestore और Realtime Database के बीच के अन्य अंतरों के बारे में बताया गया है.
डेटा मॉडल
Realtime Database और Cloud Firestore, दोनों NoSQL डेटाबेस हैं.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
यह दस्तावेज़ों के कलेक्शन के तौर पर डेटा सेव करता है.
Cloud Firestore डेटा मॉडल के बारे में ज़्यादा जानें. |
डेटा को एक बड़े JSON ट्री के तौर पर सेव करता है.
Realtime Database डेटा मॉडल के बारे में ज़्यादा जानें. |
|
रीयलटाइम और ऑफ़लाइन सहायता
दोनों में मोबाइल-फ़र्स्ट और रीयलटाइम एसडीके हैं. साथ ही, दोनों ऑफ़लाइन काम करने वाले ऐप्लिकेशन के लिए, लोकल डेटा स्टोरेज की सुविधा देते हैं.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| Apple, Android, और वेब क्लाइंट के लिए ऑफ़लाइन सहायता. | Apple और Android क्लाइंट के लिए ऑफ़लाइन सहायता. | |
खोज नतीजों में दिखने का अनुपात
यह जानना ज़रूरी हो सकता है कि कोई क्लाइंट ऑनलाइन है या ऑफ़लाइन. Firebase Realtime Database क्लाइंट के कनेक्शन का स्टेटस रिकॉर्ड कर सकता है. साथ ही, क्लाइंट के कनेक्शन की स्थिति में बदलाव होने पर, हर बार अपडेट दे सकता है.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| यह सुविधा सीधे तौर पर उपलब्ध नहीं है. Realtime Database में मौजूदगी की सुविधा को बेहतर बनाया जा सकता है. इसके लिए, Cloud Functions का इस्तेमाल करके Cloud Firestore और Realtime Database को सिंक करें. 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 में हर महीने के बजट और सूचनाओं की सुविधा उपलब्ध है. इससे आपको अपनी तय सीमा से ज़्यादा खर्च करने से बचने में मदद मिलती है. 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.