Limites do banco de dados em tempo real

A seguir estão as restrições ao armazenamento de dados e às operações no Firebase Realtime Database. Para escalar além de qualquer um desses limites, use vários bancos de dados .

Global

Operação Limite Descrição
Conexões simultâneas 200.000*

Uma conexão simultânea equivale a um dispositivo móvel, aba do navegador ou aplicativo de servidor conectado ao banco de dados.

Isso não é igual ao número total de usuários do seu aplicativo, porque nem todos os usuários se conectam ao mesmo tempo. Por exemplo, aplicativos com 10 milhões de usuários ativos mensais geralmente têm menos de 200 mil conexões simultâneas. O máximo de conexões simultâneas depende da contagem total de usuários e do tempo médio que os usuários passam em seu aplicativo.

No entanto, se precisar escalar além desse limite, tente usar vários bancos de dados .

*O limite do plano Spark em conexões simultâneas é de 100.

Respostas simultâneas enviadas de um único banco de dados. ~100.000/segundo As respostas incluem operações simultâneas de transmissão e leitura enviadas pelo servidor a partir de um único banco de dados em um determinado momento. O limite refere-se aos pacotes de dados que representam cada operação individual de leitura ou transmissão, incluindo notificações push, enviadas do banco de dados. Esta orientação é para carga sustentada, mas o banco de dados pode lidar com rajadas maiores ocasionais.
Número de Cloud Functions acionadas por uma única gravação 1000; ou, para Cloud Functions v2, 500 por região Embora não haja um limite para quantas operações de leitura ou gravação você pode acionar em uma única função, uma única operação de gravação no banco de dados só pode acionar 1.000 funções ou 500 funções por região para o Cloud Functions v2.

O Cloud Functions só pode ser acionado por operações de gravação, e cada função também pode acionar mais operações de gravação que acionam mais funções (cada uma com seu próprio limite de 1.000 funções ou 500 por região).

Tamanho de um único evento acionado por uma gravação 1MB O tamanho de um evento consiste nos seguintes valores:
  1. Os dados existentes no local de gravação.
  2. O valor de atualização ou o delta nos dados necessários para gravar os novos dados no local.
As operações de gravação maiores que 1 MB são bem-sucedidas no banco de dados, mas não acionam uma invocação de função.
Transferência de dados para Cloud Functions 10MB/seg sustentado A taxa de dados de eventos que podem ser encaminhados para o Cloud Functions.

Árvore de dados

Propriedade Limite Descrição
Profundidade máxima dos nós filhos 32 Cada caminho na sua árvore de dados deve ter menos de 32 níveis de profundidade.
Comprimento de uma chave 768 bytes As chaves são codificadas em UTF-8 e não podem conter novas linhas ou qualquer um dos seguintes caracteres:
. $ # [ ] / ou qualquer caractere de controle ASCII (0x00 - 0x1F e 0x7F)
Tamanho máximo de uma string 10MB Os dados são codificados em UTF-8.

Descrição Limite Notas
Tamanho de uma única resposta atendida pelo banco de dados 256MB O tamanho dos dados baixados do banco de dados em um único local deve ser inferior a 256 MB para cada operação de leitura.

Para realizar uma operação de leitura em um local maior, tente uma das seguintes opções:

Total de nós em um caminho com ouvintes ou consultas nele 75 milhões* Você não pode escutar ou consultar caminhos com mais de 75 milhões de nós, cumulativos. No entanto, você ainda pode ouvir ou consultar nós filhos. Tente se aprofundar no caminho ou criar ouvintes ou consultas separadas para partes mais específicas do caminho.

*Não é possível visualizar caminhos com mais de 30.000 nós no total no visualizador de dados no Console do Firebase.

Período de tempo que uma única consulta pode ser executada 15 minutos* Uma única consulta pode ser executada por até 15 minutos antes de falhar.

*Uma única consulta realizada no console do Firebase só pode ser executada por até cinco segundos antes de falhar.

Escreve

Descrição Limite Notas
Taxa de gravação 1.000 gravações/segundo O limite de operações de gravação por segundo em um único banco de dados. Embora não seja um limite rígido, se você mantiver mais de 1.000 gravações por segundo, sua atividade de gravação poderá ter taxa limitada.
Tamanho de uma única solicitação de gravação no banco de dados 256 MB da API REST; 16 MB dos SDKs. O total de dados em cada operação de gravação deve ser inferior a 256 MB. As atualizações de vários caminhos estão sujeitas à mesma limitação de tamanho.
Bytes escritos 64 MB/minuto O total de bytes gravados por meio de operações de gravação simultâneas no banco de dados a qualquer momento.