Limiti di Realtime Database

Di seguito sono riportate le limitazioni relative all'archiviazione e alle operazioni dei dati in Firebase Realtime Database. Per superare uno di questi limiti, utilizza più database.

Globale

Operazione Limite Descrizione
Connessioni simultanee 200.000*

Una connessione simultanea equivale a un dispositivo mobile, una scheda del browser o un'app server connessi al database.

Questo numero non corrisponde al numero totale di utenti della tua app, perché non tutti gli utenti si connettono contemporaneamente. Ad esempio, le app con 10 milioni di utenti attivi mensili di solito hanno meno di 200.000 connessioni simultanee. Il numero massimo di connessioni simultanee dipende dal numero totale di utenti e dal tempo medio che gli utenti trascorrono nella tua app.

Tuttavia, se hai bisogno di scalare oltre questo limite, prova a utilizzare più database.

*Il limite del piano Spark per le connessioni simultanee è 100.

Risposte simultanee inviate da un singolo database. ~100.000 al secondo Le risposte includono operazioni di trasmissione e lettura simultanee inviate dal server da un singolo database in un determinato momento. Il limite si riferisce ai pacchetti di dati che rappresentano ogni singola operazione di lettura o trasmissione, incluse le notifiche push, inviati dal database. Queste indicazioni si riferiscono a un carico sostenuto, ma il database può gestire picchi occasionali più elevati.
Numero di funzioni Cloud Functions attivate da una singola scrittura 1000; oppure, per Cloud Functions v2, 500 per regione Sebbene non esista un limite al numero di operazioni di lettura o scrittura che puoi attivare da una singola funzione, una singola operazione di scrittura del database può attivare solo 1000 funzioni o 500 funzioni per regione per Cloud Functions v2.

Cloud Functions può essere attivato solo da operazioni di scrittura e ogni funzione può anche attivare altre operazioni di scrittura che attivano altre funzioni (ognuna con il proprio limite di 1000 funzioni o 500 per regione).

Dimensione di un singolo evento attivato da una scrittura 1 MB La dimensione di un evento è costituita dai seguenti valori:
  1. I dati esistenti nella posizione di scrittura.
  2. Il valore di aggiornamento o la differenza nei dati necessaria per scrivere i nuovi dati nella posizione.
Le operazioni di scrittura di dimensioni superiori a 1 MB vengono eseguite correttamente sul database, ma non attivano una chiamata di funzione.
Trasferimento dei dati a Cloud Functions 10 MB/sec sostenuti Il tasso di dati sugli eventi che possono essere inoltrati a Cloud Functions.

Struttura ad albero dei dati

Proprietà Limite Descrizione
Profondità massima dei nodi secondari 32 Ogni percorso nell'albero dei dati deve avere meno di 32 livelli di profondità.
Lunghezza di una chiave 768 byte Le chiavi sono codificate in UTF-8 e non possono contenere nuove righe o uno dei seguenti caratteri:
. $ # [ ] / o qualsiasi carattere di controllo ASCII (0x00 - 0x1F e 0x7F)
Dimensione massima di una stringa 10 MB I dati sono codificati in UTF-8.

Letture

Descrizione Limite Note
Dimensione di una singola risposta pubblicata dal database 256 MB Le dimensioni dei dati scaricati dal database in un'unica posizione devono essere inferiori a 256 MB per ogni operazione di lettura.

Per eseguire un'operazione di lettura in una posizione più grande, prova una delle seguenti opzioni:

Numero totale di nodi in un percorso con listener o query 75 milioni* Non puoi ascoltare o interrogare percorsi con più di 75 milioni di nodi, cumulativi. Tuttavia, puoi comunque ascoltare o interrogare i nodi secondari. Prova a esaminare più in dettaglio il percorso o a creare listener o query separati per porzioni più specifiche del percorso.

*Non puoi visualizzare i percorsi con più di 30.000 nodi totali nel visualizzatore di dati della console Firebase.

Il periodo di tempo durante il quale può essere eseguita una singola query 15 minuti* Una singola query può essere eseguita per un massimo di 15 minuti prima di non riuscire.

*Una singola query eseguita nella console Firebase può essere eseguita solo per un massimo di 5 secondi prima di non riuscire.

Scritture

Descrizione Limite Note
Tasso di scrittura 1000 scritture al secondo Il limite delle operazioni di scrittura al secondo su un singolo database. Sebbene non si tratti di un limite rigido, se mantieni più di 1000 scritture al secondo, la tua attività di scrittura potrebbe essere soggetta a limitazioni della velocità.
Dimensioni di una singola richiesta di scrittura nel database 256 MB dall'API REST; 16 MB dagli SDK. La quantità totale di dati in ogni operazione di scrittura deve essere inferiore a 256 MB. Gli aggiornamenti multitraccia sono soggetti alla stessa limitazione delle dimensioni.
Byte scritti 64 MB al minuto Il numero totale di byte scritti tramite operazioni di scrittura simultanee sul database in un determinato momento.