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