Firestore-Kernvorgänge – Übersicht

Die Firestore-Kernvorgänge in der Standardversion bieten eine breite Palette von Funktionen als Dokumentendatenbank, darunter Fluent-SDKs für eine Vielzahl von Programmiersprachen, Unterstützung für Echtzeit und Offline, hohe Verfügbarkeit in Einzel- und Multiregionenkonfigurationen sowie ein praktisches serverloses Betriebsmodell mit nahtloser Autoscaling-Funktion.

Wichtige Features

Die Standardversion bietet die Firestore-Funktionen, die für die schnelle Anwendungsentwicklung mit Kernvorgängen optimiert sind.

  • Datenmodell:Cloud Firestore verwendet eine flexible hierarchische NoSQL-Datenstruktur, in der Daten in Dokumenten gespeichert werden, die in Sammlungen und Untersammlungen organisiert sind.
  • Echtzeit und Offline:Diese Vorgänge umfassen integrierte Unterstützung für Echtzeit-Abfragevorgänge, die Client-Apps sofort aktualisieren, wenn sich Daten ändern, sowie eine robuste Offline-Persistenz für mobile und Web-Clients.
  • Abfragen:Kernvorgänge unterstützen aussagekräftige und effiziente Abfragen, die verkettete Filter und Sortierungen ermöglichen. Ein wichtiges Merkmal ist, dass die Abfrageleistung proportional zur Größe der Ergebnismenge und nicht zur Gesamtgröße des Datensatzes ist.

Indexierung

In der Standardversion wird die Indexierung bei der Verwendung von Kernvorgängen streng erzwungen.

  • Obligatorische Indexierung:Alle Abfragen müssen durch einen Index unterstützt werden. Wenn ein Kernvorgang versucht, eine Abfrage ohne einen geeigneten Index auszuführen, schlägt er fehl, anstatt eine Sammlung zu scannen.
  • Automatische Indexe:Um die Entwicklung zu vereinfachen, erstellt Firestore automatisch Einzelfeldindexe für alle Felder in einem Dokument.
  • Manuelle zusammengesetzte Indexe:Für komplexe Kernvorgänge mit mehreren Feldern müssen Entwickler manuell zusammengesetzte Indexe erstellen. Ein Beispiel hierfür ist eine Abfrage, die nach einem Feld filtert und nach einem anderen sortiert. Das Client-SDK erleichtert dies, indem es einen Fehlerlink bereitstellt, der den Entwickler zur Firebase Console weiterleitet, um den spezifischen fehlenden Index zu erstellen.

Abrechnung und Limits

Das Abrechnungsmodell für Kernvorgänge in der Standardversion basiert auf der Anzahl der verarbeiteten Dokumente oder Indexe und nicht auf der Größe der verarbeiteten Daten (mit Ausnahme des Speichers). Die folgenden Preise gelten für us-central1.

  • Dokumentbasierte Kosten: Ihnen wird die Anzahl der gelesenen, geschriebenen und gelöschten Dokumente in Rechnung gestellt.

    • Lesevorgänge: 0,03 $ pro 100.000 Lesevorgänge oder 0,30 $pro Million Lesevorgänge, abgerechnet pro Dokument.
    • Schreibvorgänge: 0,09 $ pro 100.000 Schreibvorgänge oder 0,90 $pro Million Schreibvorgänge, abgerechnet pro Dokument.
    • Löschvorgänge: 0,01 $ pro 100.000 Löschvorgänge oder 0,10 $pro Million Löschvorgänge.
  • Kosten für das Schreiben von Indexen: Im Gegensatz zur Enterprise-Version fallen keine spezifischen Kosten für das Schreiben von Indexeinträgen an. Indexaktualisierungen sind in den Kosten für das Schreiben von Dokumenten enthalten. Ihnen wird jedoch der Speicherplatz in Rechnung gestellt, den diese Indexe belegen.

  • Echtzeit-Abfragevorgänge: Echtzeitaktualisierungen werden als Standard-Dokumentlesevorgänge in Rechnung gestellt. Jedes Mal, wenn der Ergebnismenge des Listeners ein Dokument hinzugefügt oder ein Dokument darin aktualisiert wird, wird ein Lesevorgang in Rechnung gestellt.

  • Lesevorgänge für Indexeinträge: Während die meisten Kernvorgänge nach der Anzahl der Dokumente abgerechnet werden, werden bei bestimmten komplexen Vorgängen wie Aggregationsabfragen (Anzahl, Summe, Durchschnitt) oder der Vektorsuche die Anzahl der gelesenen Indexeinträge in Rechnung gestellt.

  • Kostenloses Kontingent: Die Standardversion umfasst ein tägliches kostenloses Kontingent von 50.000 Lesevorgängen, 20.000 Schreibvorgängen und 20.000 Löschvorgängen.