Firebase bietet zwei cloudbasierte, clientzugängliche Dokumentendatenbanken. Wir empfehlen Neukunden, mit Cloud Firestore zu beginnen:
Cloud Firestore ist die empfohlene JSON-kompatible Dokumentendatenbank für Unternehmen, auf die mehr als 250.000 Entwickler vertrauen. Sie eignet sich für Anwendungen mit umfangreichen Datenmodellen, die Abfragefunktionen, Skalierbarkeit und Hochverfügbarkeit erfordern. Außerdem bietet es eine Clientsynchronisierung mit niedriger Latenz und Offlinedatenzugriff.
Realtime Database ist die klassische Firebase-JSON-Datenbank. Sie eignet sich für Anwendungen mit einfachen Datenmodellen, die einfache Suchanfragen und eine Synchronisierung mit geringer Latenz bei begrenzter Skalierbarkeit erfordern.
Was ist sonst noch zu beachten?
Nachdem Sie sich die oben genannten wichtigen Aspekte überlegt haben, sind Sie möglicherweise bereit, eine Datenbank auszuwä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 |
---|---|---|
Speichert Daten als Sammlungen von Dokumenten.
|
Speichert Daten als einen großen JSON-Baum.
|
Echtzeit- und Offlineunterstützung
Beide haben mobile-first-Echtzeit-SDKs und unterstützen den lokalen Datenspeicher für offlinefähige Apps.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Offlineunterstützung für Apple-, Android- und Webclients | Offlineunterstützung für Apple- und Android-Clients |
Präsenz
Es kann hilfreich sein zu wissen, wann ein Kunde online oder offline ist. FirebaseRealtime Database kann den Clientverbindungsstatus erfassen und jedes Mal aktualisieren, wenn sich der Verbindungsstatus des Clients ändert.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Nicht nativ unterstützt. Sie können die Anwesenheitsunterstützung von Realtime Database 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 einer der Datenbanken per Abfrage abrufen, sortieren und filtern
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Indexierte Abfragen mit kombinierter Sortierung und Filterung
|
Abfragen mit begrenzten 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.
|
Realtime Database ist eine regionale Lösung.
|
Betriebszeit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Extrem hohe Uptime-Leistung
|
Hohe Uptime-Leistung
|
Skalierbarkeit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Die Skalierung erfolgt automatisch.
|
Für die Skalierung ist das Sharding erforderlich.
|
Sicherheit
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Nicht kaskadierende Regeln, die Autorisierung und Validierung kombinieren.
|
Kaskadierungsregelsprache, die Autorisierung und Validierung voneinander trennt.
|
Preise
Beide Lösungen sind im Spark- und Blaze-Tarif verfügbar.
Cloud Firestore | [ PREFERRED ] | Realtime Database |
---|---|---|
Die Kosten werden hauptsächlich für Vorgänge in Ihrer Datenbank (Lesen, Schreiben, Löschen) und zu einem niedrigeren Preis für Bandbreite und Speicher berechnet.
Cloud Firestore unterstützt tägliche Ausgabenlimits für App Engine-Projekte, damit Sie nicht mehr ausgeben, als Sie sich leisten können. Weitere Informationen zu den Preismodellen für Cloud Firestore |
Es werden nur Bandbreite und Speicher in Rechnung gestellt, aber zu einem höheren Preis. |
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 ähnlich. Berücksichtigen Sie die oben beschriebenen Unterschiede, wenn Sie sich dazu entschließen, beide Datenbanken in Ihrer App zu verwenden.
Weitere Informationen zu den Funktionen, die sowohl in Realtime Database als auch in Cloud Firestore verfügbar sind.
Bereit, eine Datenbank auszuwählen?
Ich hoffe, dass dieser Vergleich Ihnen bei der Entscheidung für eine Firebase-Datenbanklösung geholfen hat. Jetzt erfahren Sie, wie Sie Ihren Firebase-Projekten eine Datenbank hinzufügen.
- Weitere Informationen zu Cloud Firestore finden Sie im Hilfeartikel Einstieg in Cloud Firestore.
- Weitere Informationen zu Realtime Database finden Sie im Abschnitt „Einstieg“ für Ihre Plattform: Apple, Android, C++, Unity, Web oder REST.