Firebase bietet zwei cloudbasierte, clientseitig zugängliche Dokumentdatenbanken. Wir empfehlen neuen Kunden, mit Cloud Firestore zu beginnen:
Cloud Firestore ist die empfohlene JSON-kompatible Dokumentdatenbank für Unternehmen, die von mehr als 250.000 Entwicklern genutzt wird. Sie eignet sich für Anwendungen mit umfangreichen Datenmodellen, die Abfragefähigkeit, Skalierbarkeit und hohe Verfügbarkeit erfordern. Außerdem bietet sie eine Clientsynchronisierung mit niedriger Latenz und einen Offline-Datenzugriff.
Realtime Database ist die klassische Firebase-JSON-Datenbank. Sie eignet sich für Anwendungen mit einfachen Datenmodellen, die einfache Suchvorgänge und eine Synchronisierung mit geringer Latenz und begrenzter Skalierbarkeit erfordern.
Was ist sonst noch zu beachten?
Nachdem Sie die oben genannten wichtigen Aspekte berücksichtigt haben, können Sie eine Datenbank auswählen. Wenn Sie noch die Vor- und Nachteile abwägen, finden Sie in diesem Abschnitt weitere Unterschiede zwischen Cloud Firestore und Realtime Database.
Datenmodell
Sowohl Realtime Database als auch Cloud Firestore sind NoSQL-Datenbanken.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Daten werden als Sammlungen von Dokumenten gespeichert.
|
Daten werden als großer JSON-Baum gespeichert.
|
Echtzeit- und Offlineunterstützung
Beide bieten mobile-first-SDKs für Echtzeitfunktionen und unterstützen die lokale Datenspeicherung für Apps, die auch offline funktionieren.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Offlinesupport für Apple-, Android- und Webclients: | Offlineunterstützung für Apple- und Android-Clients. |
Präsenz
Es kann hilfreich sein zu wissen, wann ein Client online oder offline ist. Mit Firebase Realtime Database kann der Verbindungsstatus des Clients aufgezeichnet werden. Außerdem werden Updates bereitgestellt, wenn sich der Verbindungsstatus des Clients ändert.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Wird nicht nativ unterstützt. Sie können die Unterstützung von Realtime Database für die Anwesenheit nutzen, indem Sie Cloud Firestore und Realtime Database mit Cloud Functions synchronisieren. Weitere Informationen finden Sie unter Anwesenheit in Cloud Firestore erstellen. | Anwesenheit wird unterstützt. |
Abfragen
Daten aus beiden Datenbanken über Abfragen abrufen, sortieren und filtern.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Indexierte Abfragen mit zusammengesetzter Sortierung und Filterung:
|
Umfangreiche Abfragen mit eingeschränkten Sortier- und Filterfunktionen:
|
Schreibvorgänge und Transaktionen
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Erweiterte Schreib- und Transaktionsvorgänge:
|
Grundlegende Schreib- und Transaktionsvorgänge
|
Zuverlässigkeit und Leistung
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Cloud Firestore ist eine regionale und multiregionale Lösung, die automatisch skaliert wird.
|
Realtime Database ist eine regionale Lösung.
|
Betriebszeit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Extrem hohe Uptime:
|
Hohe Betriebszeit.
|
Skalierbarkeit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Die Skalierung erfolgt automatisch.
|
Für die Skalierung ist Sharding erforderlich.
|
Sicherheit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Nicht kaskadierende Regeln, die Autorisierung und Validierung kombinieren:
|
Sprache für kaskadierende Regeln, die Autorisierung und Validierung trennt:
|
Preise
Beide Lösungen sind in den Spark- und Blaze-Tarifen verfügbar.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Die Gebühren basieren hauptsächlich auf Vorgängen, die in Ihrer Datenbank ausgeführt werden (Lesen, Schreiben, Löschen), und in geringerem Maße auf Bandbreite und Speicher.
Cloud Firestore unterstützt Tagesausgabenlimits für App Engine-Projekte, damit Sie die Kosten nicht überschreiten, die Sie bereit sind auszugeben. |
Es werden nur Bandbreite und Speicherplatz in Rechnung gestellt, jedoch zu einem höheren Preis.
Weitere Informationen zu den Realtime Database-Preismodellen |
Cloud Firestore und Realtime Database verwenden
Sie können beide Datenbanken in derselben Firebase-App oder demselben Firebase-Projekt verwenden. In beiden NoSQL-Datenbanken können dieselben Datentypen gespeichert werden und die Clientbibliotheken funktionieren auf ähnliche Weise. Berücksichtigen Sie die oben beschriebenen Unterschiede, wenn Sie beide Datenbanken in Ihrer App verwenden möchten.
Weitere Informationen zu den Funktionen, die in Realtime Database und Cloud Firestore verfügbar sind
Bereit, eine Datenbank auszuwählen?
Wir hoffen, dass dieser Vergleich Ihnen bei der Entscheidung für eine Firebase-Datenbanklösung geholfen hat. Als Nächstes erfahren Sie, wie Sie Ihren Firebase-Projekten eine Datenbank hinzufügen.