Firebase bietet zwei cloudbasierte, für den Client zugängliche Dokumentendatenbanken. Wir empfehlen Neukunden, mit Cloud Firestore zu beginnen:
Cloud Firestore ist die empfohlene JSON-kompatible Dokumentendatenbank der Unternehmensklasse, der mehr als 250.000 Entwickler vertrauen. Es eignet sich für Anwendungen mit umfangreichen Datenmodellen, die Abfragebarkeit, Skalierbarkeit und hohe Verfügbarkeit erfordern. Es bietet außerdem Client-Synchronisierung mit geringer Latenz und Offline-Datenzugriff.
Realtime Database ist die klassische Firebase JSON-Datenbank. Es eignet sich für Anwendungen mit einfachen Datenmodellen, die einfache Suchvorgänge und eine Synchronisierung mit geringer Latenz und begrenzter Skalierbarkeit erfordern.
Was gibt es sonst noch zu beachten?
Nachdem Sie über die vorherigen wichtigen Überlegungen nachgedacht haben, sind Sie möglicherweise bereit, eine Datenbank auszuwählen . Wenn Sie immer noch Vor- und Nachteile abwägen, werden in diesem Abschnitt weitere Unterschiede zwischen Cloud Firestore und Realtime Database behandelt.
Datenmodell
Sowohl Realtime Database als auch Cloud Firestore sind NoSQL-Datenbanken.
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Speichert Daten als Dokumentensammlungen.
Erfahren Sie mehr über das Cloud Firestore-Datenmodell . | Speichert Daten als einen großen JSON-Baum.
Erfahren Sie mehr über das Datenmodell der Echtzeitdatenbank . |
Echtzeit- und Offline-Unterstützung
Beide verfügen über Mobile-First-Echtzeit-SDKs und unterstützen die lokale Datenspeicherung für offline-fähige Apps.
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Offline-Unterstützung für Apple-, Android- und Web-Clients. | Offline-Unterstützung für Apple- und Android-Clients. |
Gegenwart
Es kann nützlich sein zu wissen, wann ein Client online oder offline ist. Die Firebase-Echtzeitdatenbank kann den Verbindungsstatus des Clients aufzeichnen und jedes Mal Aktualisierungen bereitstellen, wenn sich der Verbindungsstatus des Clients ändert.
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Wird nicht nativ unterstützt. Sie können auf der Präsenzunterstützung von Realtime Database aufbauen, indem Sie Cloud Firestore und Realtime Database mithilfe von Cloud Functions synchronisieren. Siehe Präsenz in Cloud Firestore erstellen . | Präsenz unterstützt. |
Abfragen
Rufen Sie Daten aus beiden Datenbanken über Abfragen ab, sortieren und filtern Sie sie.
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Indizierte Abfragen mit zusammengesetzter Sortierung und Filterung .
| Umfangreiche Abfragen mit eingeschränkten Sortier- und Filterfunktionen .
|
Schreibvorgänge und Transaktionen
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Erweiterte Schreib- und Transaktionsvorgänge.
| Grundlegende Schreib- und Transaktionsoperationen.
|
Zuverlässigkeit und Leistung
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Cloud Firestore ist eine regionale und multiregionale Lösung, die automatisch skaliert.
| Realtime Database ist eine regionale Lösung.
|
Betriebszeit
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Extrem hohe Verfügbarkeitsleistung.
| Hohe Verfügbarkeitsleistung.
|
Skalierbarkeit
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Die Skalierung erfolgt automatisch.
| Die Skalierung erfordert Sharding.
|
Sicherheit
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Nicht kaskadierende Regeln, die Autorisierung und Validierung kombinieren.
| Kaskadierende Regelsprache, die Autorisierung und Validierung trennt.
|
Preisgestaltung
Beide Lösungen sind in den Preisplänen Spark und Blaze verfügbar.
Cloud Firestore bevorzugt | Echtzeitdatenbank |
---|---|
Gebühren fallen hauptsächlich für in Ihrer Datenbank ausgeführte Vorgänge (Lesen, Schreiben, Löschen) und, zu einem geringeren Preis, für Bandbreite und Speicher an. Cloud Firestore unterstützt tägliche Ausgabenlimits für App Engine-Projekte, um sicherzustellen, dass Sie die Kosten, mit denen Sie einverstanden sind, nicht überschreiten. Erfahren Sie mehr über die Preispläne für Cloud Firestore . | Es fallen nur Gebühren für Bandbreite und Speicher an , jedoch zu einem höheren Preis. Erfahren Sie mehr über die Preispläne für Echtzeitdatenbanken . |
Verwendung von Cloud Firestore und Echtzeitdatenbank
Sie können beide Datenbanken innerhalb derselben Firebase-App oder desselben Firebase-Projekts verwenden. Beide NoSQL-Datenbanken können die gleichen Datentypen speichern und die Client-Bibliotheken funktionieren auf ähnliche Weise. Beachten Sie die zuvor beschriebenen Unterschiede, wenn Sie sich für die Verwendung beider Datenbanken in Ihrer App entscheiden.
Erfahren Sie mehr über die Funktionen, die sowohl in Realtime Database als auch in Cloud Firestore verfügbar sind.
Sind Sie bereit, eine Datenbank auszuwählen?
Hoffentlich hat Ihnen dieser Vergleich dabei geholfen, sich für eine Firebase-Datenbanklösung zu entscheiden. Jetzt erfahren Sie, wie Sie Ihren Firebase-Projekten eine Datenbank hinzufügen.