Firebase, क्लाउड पर आधारित दो ऐसे डेटाबेस उपलब्ध कराता है जिन्हें क्लाइंट ऐक्सेस कर सकते हैं. हम नए ग्राहकों को Cloud Firestore से शुरुआत करने का सुझाव देते हैं:
Cloud Firestore , एंटरप्राइज़-ग्रेड का सुझाया गया JSON-संगत दस्तावेज़ डेटाबेस है. इस पर 6 लाख से ज़्यादा डेवलपर भरोसा करते हैं. यह उन ऐप्लिकेशन के लिए सही है जिनमें रिच डेटा मॉडल की ज़रूरत होती है और जिनमें क्वेरी की जा सकने की योग्यता, बढ़ाने जा सकने की योग्यता, और ज़्यादा अपटाइम की सुविधा होती है. यह कम इंतज़ार के समय में क्लाइंट सिंक करने और ऑफ़लाइन डेटा का ऐक्सेस करने की सुविधा भी देता है.
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's की मौजूदगी की सुविधा का इस्तेमाल करके, Cloud Firestore और Realtime Database को Cloud Functions का इस्तेमाल करके सिंक कर सकते हैं. Build presence in 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.