Limites de la base de données en temps réel

Voici les restrictions sur le stockage des données et les opérations dans Firebase Realtime Database. Pour évoluer au-delà de l'une de ces limites, utilisez plusieurs bases de données .

Mondial

Opération Limite Description
Connexions simultanées 200 000*

Une connexion simultanée équivaut à un appareil mobile, un onglet de navigateur ou une application serveur connecté à la base de données.

Ce n'est pas la même chose que le nombre total d'utilisateurs de votre application, car vos utilisateurs ne se connectent pas tous en même temps. Par exemple, les applications comptant 10 millions d’utilisateurs actifs par mois ont généralement moins de 200 000 connexions simultanées. Le nombre maximal de connexions simultanées dépend de votre nombre total d'utilisateurs et du temps moyen que les utilisateurs passent dans votre application.

Toutefois, si vous devez évoluer au-delà de cette limite, essayez d'utiliser plusieurs bases de données .

*La limite du plan Spark sur les connexions simultanées est de 100.

Réponses simultanées envoyées à partir d’une seule base de données. ~100 000/seconde Les réponses incluent des opérations de diffusion et de lecture simultanées envoyées par le serveur à partir d'une seule base de données à un instant donné. La limite fait référence aux paquets de données qui représentent chaque opération de lecture ou de diffusion individuelle, y compris les notifications push, envoyées depuis la base de données. Ces conseils concernent une charge soutenue, mais la base de données peut gérer des rafales occasionnelles plus élevées.
Nombre de fonctions Cloud déclenchées par une seule écriture 1000 ; ou, pour Cloud Functions v2, 500 par région Bien qu'il n'y ait pas de limite au nombre d'opérations de lecture ou d'écriture que vous pouvez déclencher à partir d'une seule fonction, une seule opération d'écriture de base de données ne peut déclencher que 1 000 fonctions, ou 500 fonctions par région pour Cloud Functions v2.

Les fonctions Cloud ne peuvent être déclenchées que par des opérations d'écriture, et chaque fonction peut également déclencher davantage d'opérations d'écriture qui déclenchent davantage de fonctions (chacune avec sa propre limite de 1 000 fonctions ou de 500 par région).

Taille d'un seul événement déclenché par une écriture 1 Mo La taille d'un événement se compose des valeurs suivantes :
  1. Les données existantes à l’emplacement d’écriture.
  2. La valeur de mise à jour ou le delta des données nécessaire pour écrire les nouvelles données à l'emplacement.
Les opérations d'écriture supérieures à 1 Mo réussissent sur la base de données, mais elles ne déclenchent pas d'appel de fonction.
Transfert de données vers Cloud Functions 10 Mo/sec soutenu Taux de données d'événement pouvant être transmises à Cloud Functions.

Arbre de données

Propriété Limite Description
Profondeur maximale des nœuds enfants 32 Chaque chemin de votre arborescence de données doit avoir moins de 32 niveaux de profondeur.
Longueur d'une clé 768 octets Les clés sont codées en UTF-8 et ne peuvent pas contenir de nouvelles lignes ni l'un des caractères suivants :
. $ # [ ] / ou tout caractère de contrôle ASCII (0x00 - 0x1F et 0x7F)
Taille maximale d'une chaîne 10 Mo Les données sont codées en UTF-8.

Lit

Description Limite Remarques
Taille d'une réponse unique servie par la base de données 256 Mo La taille des données téléchargées à partir de la base de données à un seul emplacement doit être inférieure à 256 Mo pour chaque opération de lecture.

Pour effectuer une opération de lecture sur un emplacement plus grand, essayez l'une des options suivantes :

Nombre total de nœuds dans un chemin avec des écouteurs ou des requêtes dessus 75 millions* Vous ne pouvez pas écouter ou interroger des chemins comportant plus de 75 millions de nœuds au total. Cependant, vous pouvez toujours écouter ou interroger les nœuds enfants. Essayez d'approfondir le chemin ou de créer des écouteurs ou des requêtes distincts pour des parties plus spécifiques du chemin.

*Vous ne pouvez pas afficher les chemins comportant plus de 30 000 nœuds au total à partir de la visionneuse de données de la console Firebase.

Durée d'exécution d'une seule requête 15 minutes* Une seule requête peut s'exécuter jusqu'à 15 minutes avant d'échouer.

*Une seule requête effectuée dans la console Firebase ne peut s'exécuter que pendant 5 secondes maximum avant d'échouer.

Écrit

Description Limite Remarques
Taux d'écriture 1 000 écritures/seconde Limite des opérations d'écriture par seconde sur une seule base de données. Bien qu'il ne s'agisse pas d'une limite stricte, si vous effectuez plus de 1 000 écritures par seconde, votre activité d'écriture peut être limitée en débit.
Taille d'une seule demande d'écriture dans la base de données 256 Mo depuis l'API REST ; 16 Mo des SDK. Le total des données de chaque opération d'écriture doit être inférieur à 256 Mo. Les mises à jour multi-chemins sont soumises à la même limitation de taille.
Octets écrits 64 Mo/minute Nombre total d'octets écrits via des opérations d'écriture simultanées sur la base de données à un moment donné.