Verwenden Sie diesen Leitfaden, um die Cloud Firestore-Grenzwerte zu verstehen, und sehen Sie sich die Cloud Firestore-Preise an, um eine vollständige, detaillierte Erklärung der Cloud Firestore-Kosten zu erhalten, einschließlich Dingen, auf die Sie achten sollten.
Überwachen Sie Ihre Nutzung
Um Ihre Cloud Firestore-Nutzung zu überwachen, öffnen Sie die Registerkarte „Cloud Firestore- Nutzung “ in der Firebase-Konsole. Verwenden Sie das Dashboard, um Ihre Nutzung über verschiedene Zeiträume hinweg zu messen.
Detaillierte Nutzung in der Google Cloud Console
Wenn Sie ein Firebase-Projekt erstellen, erstellen Sie auch ein Google Cloud-Projekt. Die Seiten „Cloud Firestore API-Kontingente“ und „App Engine-Kontingente“ in der Google Cloud-Konsole verfolgen die Nutzung und Kontingentinformationen von Cloud Firestore.
Kostenloses Kontingent
Cloud Firestore bietet ein kostenloses Kontingent, mit dem Sie kostenlos mit Ihrer (default)
Datenbank beginnen können. Die kostenlosen Kontingentbeträge sind unten aufgeführt. Wenn Sie mehr Kontingent benötigen, müssen Sie die Abrechnung für Ihr Google Cloud-Projekt aktivieren .
Die Quoten werden täglich angewendet und gegen Mitternacht pazifischer Zeit zurückgesetzt.
Nur die (default)
Datenbank ist für das kostenlose Kontingent qualifiziert.
Kostenloses Kontingent | Quote |
---|---|
Gespeicherte Daten | 1 GiB |
Dokument liest | 50.000 pro Tag |
Dokument schreibt | 20.000 pro Tag |
Dokument wird gelöscht | 20.000 pro Tag |
Ausgehende Datenübertragung | 10 GiB pro Monat |
Die folgenden Vorgänge und Funktionen beinhalten keine kostenlose Nutzung. Sie müssen die Abrechnung aktivieren, um diese Funktionen nutzen zu können:
- Verwendung benannter (nicht standardmäßiger) Datenbanken
- TTL löscht
- PITR-Daten
- Backup-Daten
- Vorgänge wiederherstellen
Weitere Informationen zur Abrechnung dieser Funktionen finden Sie unter Speicherpreise .
Standardgrenzen
Die folgenden Tabellen zeigen die Grenzwerte, die für Cloud Firestore gelten. Sofern nicht anders angegeben, handelt es sich hierbei um harte Grenzwerte.
Datenbanken
Grenze | Einzelheiten |
---|---|
Maximale Anzahl von Datenbanken pro Projekt | 100 Sie können sich an den Support wenden, um eine Erhöhung dieses Limits anzufordern. |
Sammlungen, Dokumente und Felder
Grenze | Einzelheiten |
---|---|
Einschränkungen für Sammlungs-IDs |
|
Maximale Tiefe der Untersammlungen | 100 |
Einschränkungen für Dokument-IDs |
|
Maximale Größe für einen Dokumentnamen | 6 KiB |
Maximale Größe für ein Dokument | 1 MiB (1.048.576 Byte) |
Einschränkungen für Feldnamen | Muss gültige UTF-8-Zeichen sein |
Maximale Größe eines Feldnamens | 1.500 Byte |
Einschränkungen für Feldwege |
` ). Beispielsweise bezieht sich foo.`x&y` auf das x&y -Feld, das unter dem foo Feld verschachtelt ist. Um einen Feldnamen mit dem Backtick-Zeichen zu erstellen, maskieren Sie das Backtick-Zeichen mit dem Backslash-Zeichen ( \ ). Der Einfachheit halber können Sie Feldnamen in Anführungszeichen vermeiden, indem Sie den Feldpfad als FieldPath-Objekt übergeben ( siehe beispielsweise JavaScript FieldPath ). |
Maximale Größe eines Feldpfades | 1.500 Byte |
Maximale Größe eines Feldwerts | 1 MiB – 89 Byte (1.048.487 Byte) |
Maximale Feldtiefe in einer Karte oder einem Array | 20 |
Schreibvorgänge und Transaktionen
Zusätzlich zu diesen Grenzwerten sollten Sie sich auch mit den Best Practices für skalierbares Design vertraut machen.
Grenze | Einzelheiten |
---|---|
Maximale API-Anfragegröße | 10 MiB |
Zeitlimit für eine Transaktion | 270 Sekunden, mit einer Leerlaufzeit von 60 Sekunden |
Indizes
Für Einzelfeldindizes und zusammengesetzte Indizes gelten die folgenden Einschränkungen:
Grenze | Einzelheiten |
---|---|
Maximale Anzahl zusammengesetzter Indizes für eine Datenbank |
|
Maximale Anzahl von Einzelfeldkonfigurationen für eine Datenbank |
Eine Konfiguration auf Feldebene kann mehrere Konfigurationen für dasselbe Feld enthalten. Beispielsweise zählen eine Ausnahme von der Einzelfeldindizierung und eine TTL-Richtlinie für dasselbe Feld als eine Feldkonfiguration für den Grenzwert. |
Maximale Anzahl von Indexeinträgen für jedes Dokument | 40.000 Die Anzahl der Indexeinträge ist die Summe der folgenden Werte für ein Dokument:
Um zu sehen, wie Cloud Firestore ein Dokument und eine Reihe von Indizes in Indexeinträge umwandelt, sehen Sie sich dieses Beispiel für die Anzahl der Indexeinträge an. |
Maximale Anzahl von Feldern in einem zusammengesetzten Index | 100 |
Maximale Größe eines Indexeintrags | 7,5 KiB Informationen dazu, wie Cloud Firestore die Indexeintragsgröße berechnet, finden Sie unter Indexeintragsgröße . |
Maximale Summe der Größen der Indexeinträge eines Dokuments | 8 MiB Die Gesamtgröße ist die Summe der folgenden Werte für ein Dokument: |
Maximale Größe eines indizierten Feldwerts | 1500 Byte Feldwerte über 1500 Byte werden abgeschnitten. Abfragen mit abgeschnittenen Feldwerten können inkonsistente Ergebnisse liefern. |
Lebensdauer (TTL)
Grenze | Einzelheiten |
---|---|
Maximale Anzahl von Einzelfeldkonfigurationen für eine Datenbank |
Eine Konfiguration auf Feldebene kann mehrere Konfigurationen für dasselbe Feld enthalten. Beispielsweise zählen eine Ausnahme von der Einzelfeldindizierung und eine TTL-Richtlinie für dasselbe Feld als eine Feldkonfiguration für den Grenzwert. |
Export Import
Für verwaltete Import- und Exportvorgänge gelten die folgenden Grenzwerte:
Grenze | Einzelheiten |
---|---|
Maximal zulässige Gesamtzahl an Export- und Importanfragen für ein Projekt pro Minute | 20 |
Maximale Anzahl gleichzeitiger Exporte und Importe | 50 |
Maximale Anzahl von Sammlungs-ID-Filtern für Export- und Importanfragen | 100 |
Sicherheitsregeln
Grenze | Einzelheiten |
---|---|
Maximale Anzahl von exists() , get() - und getAfter() Aufrufen pro Anfrage |
Das Überschreiten eines dieser Grenzwerte führt zu einem Fehler, bei dem die Berechtigung verweigert wurde. Einige Dokumentzugriffsaufrufe werden möglicherweise zwischengespeichert und zwischengespeicherte Aufrufe werden nicht auf die Grenzwerte angerechnet. |
Maximale Tiefe der verschachtelten match Anweisung | 10 |
Maximale Pfadlänge in Pfadsegmenten, die innerhalb einer Reihe verschachtelter match Anweisungen zulässig ist | 100 |
Maximal zulässige Anzahl von Pfaderfassungsvariablen innerhalb einer Reihe verschachtelter match Anweisungen | 20 |
Maximale Funktionsaufruftiefe | 20 |
Maximale Anzahl von Funktionsargumenten | 7 |
Maximale Anzahl von let Variablenbindungen pro Funktion | 10 |
Maximale Anzahl rekursiver oder zyklischer Funktionsaufrufe | 0 (nicht erlaubt) |
Maximale Anzahl ausgewerteter Ausdrücke pro Anfrage | 1.000 |
Maximale Größe eines Regelsatzes | Regelsätze müssen zwei Größenbeschränkungen einhalten:
|
Ausgaben verwalten
Um unerwartete Belastungen auf Ihrer Rechnung zu vermeiden, legen Sie monatliche Budgets und Benachrichtigungen fest.
Legen Sie ein Monatsbudget fest
Um Ihre Cloud Firestore-Kosten zu verfolgen, erstellen Sie in der Google Cloud Console ein Monatsbudget. Budgets schränken Ihre Nutzung nicht ein, Sie können jedoch Benachrichtigungen einrichten, die Sie benachrichtigen, wenn Sie sich Ihren geplanten Kosten für den Monat nähern oder diese überschreiten.
Um ein Budget festzulegen, gehen Sie in der Google Cloud Console zum Abschnitt „Abrechnung“ und erstellen Sie ein Budget für Ihr Cloud-Rechnungskonto. Sie können die Standard-Benachrichtigungseinstellungen verwenden oder die Benachrichtigungen ändern, um Benachrichtigungen zu unterschiedlichen Prozentsätzen Ihres Monatsbudgets zu senden.
Erfahren Sie mehr über das Einrichten von Budgets und Budgetbenachrichtigungen .