Limits für Echtzeitdatenbanken

Im Folgenden finden Sie Einschränkungen für den Datenspeicher und -abruf in Firebase Realtime Database. Wenn Sie über diese Limits hinaus skalieren möchten, verwenden Sie mehrere Datenbanken.

Global

Vorgang Limit Beschreibung
Gleichzeitige Verbindungen 200.000*

Eine gleichzeitige Verbindung entspricht einem Mobilgerät, einem Browsertab oder einer Serveranwendung, die mit der Datenbank verbunden ist.

Dieser Wert entspricht nicht der Gesamtzahl der Nutzer Ihrer App, da nicht alle Nutzer gleichzeitig eine Verbindung herstellen. Apps mit 10 Millionen monatlich aktiven Nutzern haben in der Regel weniger als 200.000 gleichzeitige Verbindungen. Die maximale Anzahl gleichzeitiger Verbindungen hängt von der Gesamtzahl der Nutzer und der durchschnittlichen Zeit ab, die Nutzer in Ihrer Anwendung verbringen.

Wenn Sie jedoch über dieses Limit hinaus skalieren müssen, können Sie mehrere Datenbanken verwenden.

*Das Limit des Tarifs „Spark“ für gleichzeitige Verbindungen beträgt 100.

Gleichzeitige Antworten, die von einer einzelnen Datenbank gesendet werden. ~100.000 pro Sekunde Antworten umfassen gleichzeitige Übertragungs- und Lesevorgänge, die vom Server zu einem bestimmten Zeitpunkt aus einer einzelnen Datenbank gesendet werden. Das Limit bezieht sich auf die Datenpakete, die jeden einzelnen Lese- oder Übertragungsvorgang darstellen, einschließlich Push-Benachrichtigungen, die von der Datenbank gesendet werden. Diese Empfehlung gilt für eine anhaltende Auslastung, die Datenbank kann aber gelegentliche höhere Spitzen bewältigen.
Anzahl der Cloud Functions-Funktionen, die durch einen einzelnen Schreibvorgang ausgelöst werden 1.000 oder für Cloud Functions Version 2 500 pro Region Es gibt zwar keine Begrenzung für die Anzahl der Lese- oder Schreibvorgänge, die Sie über eine einzelne Funktion auslösen können, aber ein einzelner Datenbankschreibvorgang kann bei Cloud Functions v2 nur 1.000 Funktionen oder 500 Funktionen pro Region auslösen.

Cloud Functions kann nur durch Schreibvorgänge ausgelöst werden. Jede Funktion kann auch weitere Schreibvorgänge auslösen, die wiederum weitere Funktionen auslösen (jeweils mit einem eigenen Limit von 1.000 Funktionen oder 500 pro Region).

Größe eines einzelnen Ereignisses, das durch eine Schreiboperation ausgelöst wurde 1 MB Die Größe eines Ereignisses besteht aus den folgenden Werten:
  1. Die vorhandenen Daten am Schreibort.
  2. Der Aktualisierungswert oder das Datendelta, das zum Schreiben der neuen Daten an den Speicherort erforderlich ist.
Schreibvorgänge, die größer als 1 MB sind, sind in der Datenbank erfolgreich, lösen aber keinen Funktionsaufruf aus.
Datenübertragung zu Cloud Functions 10 MB/s (kontinuierlich) Die Rate der Ereignisdaten, die an Cloud Functions weitergeleitet werden können.

Datenstruktur

Attribut Limit Beschreibung
Maximale Tiefe von untergeordneten Knoten 32 Jeder Pfad in Ihrer Datenstruktur muss weniger als 32 Ebenen umfassen.
Länge eines Schlüssels 768 Byte Schlüssel sind UTF-8-codiert und dürfen keine Zeilenumbrüche oder eines der folgenden Zeichen enthalten:
. $ # [ ] / oder beliebige ASCII-Steuerzeichen (0x00–0x1F und 0x7F)
Maximale Größe eines Strings 10 MB Die Daten sind UTF-8-codiert.

Lesevorgänge

Beschreibung Limit Hinweise
Größe einer einzelnen Antwort, die von der Datenbank gesendet wird 256 MB Die Größe der Daten, die aus der Datenbank an einen Ort heruntergeladen werden, sollte bei jedem Lesevorgang unter 256 MB liegen.

Wenn Sie einen Lesevorgang an einem größeren Speicherort ausführen möchten, haben Sie folgende Möglichkeiten:

Gesamtzahl der Knoten in einem Pfad mit Listenern oder Abfragen 75 Millionen* Sie können keine Pfade mit mehr als 75 Millionen kumulativen Knoten überwachen oder abfragen. Sie können jedoch weiterhin untergeordnete Knoten abhören oder abfragen. Versuchen Sie, den Pfad genauer zu untersuchen oder separate Listener oder Abfragen für bestimmtere Teile des Pfads zu erstellen.

*In der Datenansicht in der Firebase Console können keine Pfade mit mehr als 30.000 Knoten insgesamt angezeigt werden.

Ausführungsdauer einer einzelnen Abfrage 15 Minuten* Eine einzelne Abfrage kann bis zu 15 Minuten laufen, bevor ein Fehler auftritt.

*Eine einzelne Abfrage, die in der Firebase-Konsole ausgeführt wird, kann nur bis zu 5 Sekunden lang ausgeführt werden, bevor sie fehlschlägt.

Schreibvorgänge

Beschreibung Limit Hinweise
Schreibgeschwindigkeit 1.000 Schreibvorgänge/Sekunde Das Limit für Schreibvorgänge pro Sekunde in einer einzelnen Datenbank. Das ist zwar kein starres Limit, aber wenn Sie mehr als 1.000 Schreibvorgänge pro Sekunde ausführen, wird die Schreibrate möglicherweise begrenzt.
Größe einer einzelnen Schreibanfrage an die Datenbank 256 MB von der REST API; 16 MB von den SDKs. Die Gesamtdatenmenge bei jedem Schreibvorgang sollte weniger als 256 MB betragen. Für Multipath-Aktualisierungen gilt dieselbe Größenbeschränkung.
Geschriebene Byte 64 MB/Minute Die Gesamtzahl der Bytes, die zu einem bestimmten Zeitpunkt durch gleichzeitige Schreibvorgänge in die Datenbank geschrieben wurden.