Firestore – Übersicht
Firestore ist eine flexible, skalierbare Datenbank für die Mobil-, Web- und Serverentwicklung über Firebase und Google Cloud. Firestore verwendet Echtzeit-Listener für die Datensynchronisierung zwischen Client-Apps und ist auf Mobilgeräten und im Web offline nutzbar, sodass sich eine reaktionsfähige App entwickeln lässt, die unabhängig von Netzwerklatenz und Internetverbindung funktioniert. Firestore bietet außerdem eine nahtlose Einbindung in andere Firebase- und Google Cloud-Produkte, einschließlich Cloud Run-Funktionen.
Hauptmerkmale
Flexibilität | Das Firestore-Datenmodell unterstützt flexible, hierarchische Datenstrukturen. Sie können Daten in Dokumenten speichern, die in Sammlungen organisiert sind. Dokumente können neben Untersammlungen auch komplexe verschachtelte Objekte enthalten. |
Ausdrucksstarke Abfragen | In Firestore können Sie mit Abfragen einzelne, bestimmte Dokumente oder alle Dokumente in einer Sammlung abrufen, die mit Ihren Abfrageparametern übereinstimmen. Ihre Abfragen können mehrere verkettete Filter enthalten und Filtern und Sortieren kombinieren. Außerdem werden sie standardmäßig indexiert, sodass die Abfrageleistung proportional zur Größe des Ergebnissatzes und nicht des Datensatzes ist. |
Für Skalierung entworfen | Firestore bietet automatische multiregionale Datenreplikation, strikt konsistente Abfragen, atomare Batchvorgänge und Transaktionsunterstützung. |
Echtzeitaktualisierungen | Firestore verwendet die Datensynchronisierung, um Daten auf allen verbundenen Geräten zu aktualisieren. Er ist jedoch auch für einfache, einmalige Abrufe konzipiert. |
Offline-Support | Firestore speichert Daten, die Ihre App aktiv verwendet, im Cache. So kann die App Daten auch dann schreiben, lesen, abhören und abfragen, wenn das Gerät offline ist. Wenn das Gerät wieder online ist, synchronisiert Firestore alle lokalen Änderungen mit Firestore. |
Funktionsweise
Firestore ist eine in der Cloud gehostete NoSQL-Datenbank, die neben REST- und RPC-APIs auch in Clientbibliotheken für Node.js, Java, Python, Unity, C++ und Go verfügbar ist. Apple-, Android- und Web-Apps können auch direkt über die Clientbibliotheken auf die Datenbank zugreifen.
Gemäß dem NoSQL-Datenmodell von Firestore speichern Sie Daten in Dokumenten, die Felder enthalten, die wiederum Werten zugeordnet sind. Diese Dokumente werden in Sammlungen gespeichert. Das sind Container für Ihre Dokumente, mit denen Sie Ihre Daten organisieren und Abfragen erstellen können. Dokumente unterstützen viele verschiedene Datentypen, von einfachen Strings und Zahlen bis hin zu komplexen verschachtelten Objekten. Sie können auch Untersammlungen innerhalb von Dokumenten erstellen und hierarchische Datenstrukturen aufbauen, die mit der Größe Ihrer Datenbank skalieren. Das Firestore-Datenmodell unterstützt jede Datenstruktur, die für Ihre App am besten geeignet ist.
Außerdem sind Abfragen in Firestore ausdrucksstark, effizient und flexibel. Erstellen Sie flache Abfragen, um Daten auf Dokumentebene abzurufen, ohne die gesamte Sammlung oder verschachtelte untergeordnete Sammlungen abrufen zu müssen. Fügen Sie Ihren Abfragen oder Cursorn Sortierungen, Filter und Limits hinzu, um die Ergebnisse zu paginarisieren. Wenn Sie die Daten in Ihren Apps auf dem neuesten Stand halten möchten, ohne jedes Mal bei einer Aktualisierung die gesamte Datenbank abzurufen, fügen Sie Echtzeit-Empfänger hinzu. Wenn Sie Ihrer App Echtzeit-Listener hinzufügen, werden Sie jedes Mal über einen Daten-Snapshot benachrichtigt, wenn sich die Daten ändern, auf die Ihre Client-Apps hören. Dabei werden nur die neuen Änderungen abgerufen.
Schützen Sie den Zugriff auf Ihre Daten in Firestore mit Identity and Access Management (IAM) für serverseitige Sprachen. Für Android-, Apple-Plattformen und JavaScript können Sie Ihre Daten mit Firebase Authentication und Firestore-Sicherheitsregeln schützen.
Nächste Schritte
- Erste Schritte mit Firestore: Richten Sie Ihre Datenbank ein, fügen Sie Daten hinzu und lesen Sie sie.
- Weitere Informationen zum Firestore-Datenmodell
- Datenbanken erstellen und verwalten