Quotas e limites
Esta página identifica as quotas e os limites de pedidos para o Firestore.
Quota gratuita
O Firestore oferece uma quota gratuita que lhe permite começar sem custos financeiros. Se precisar de mais quota, tem de ativar a faturação para o seu Google Cloud projeto.
As quotas são aplicadas diariamente e repostas à meia-noite (hora do Pacífico).
A tabela seguinte resume os valores da quota gratuita:
Nível gratuito | Quota |
---|---|
Dados armazenados | 1 GiB |
Leituras do documento | 50 000 por dia |
Escritas do documento | 20 000 por dia |
Eliminações do documento | 20 000 por dia |
Transferência de dados de saída | 10 GiB por mês |
As seguintes operações e funcionalidades não incluem a utilização gratuita. Tem de ativar a faturação para usar estas funcionalidades:
- Eliminações de TTL
- Dados PITR
- Faça uma cópia de segurança dos dados
- Operações de restauro
- Operações de clonagem
Para mais informações sobre a faturação destas funcionalidades, consulte os preços de armazenamento.
Limites padrão
As tabelas seguintes mostram os limites que se aplicam ao Firestore. Estes são limites rígidos, salvo indicação em contrário.
Bases de dados
Limite | Detalhes |
---|---|
Número máximo de bases de dados por projeto |
100 Pode contactar o apoio técnico para pedir um aumento deste limite. |
Número máximo de bases de dados com chaves de encriptação geridas pelo cliente (CMEK) por projeto |
0 Por predefinição, a quota é 0 porque esta funcionalidade está atrás de uma lista de autorizações. Pode pedir o aumento da quota preenchendo o formulário de pedido de acesso à CMEK. |
Coleções, documentos e campos
Limite | Detalhes |
---|---|
Restrições relativas aos IDs de coleções |
|
Profundidade máxima de subcoleções | 100 |
Restrições nos IDs de documentos |
|
Tamanho máximo para um nome de documento | 6 KiB |
Tamanho máximo de um documento | 1 MiB (1 048 576 bytes) |
Restrições nos nomes dos campos |
|
Tamanho máximo de um nome de campo | 1500 bytes |
Restrições nos caminhos dos campos |
` ). Por exemplo, foo.`x&y` refere-se ao campo x&y aninhado no campo foo . Para criar um nome de campo com o caráter acento grave, escape o caráter acento grave com o caráter barra invertida (\ ). Para maior comodidade, pode evitar nomes de campos entre aspas transmitindo o caminho do campo como um objeto FieldPath (por exemplo, consulte FieldPath em JavaScript).
|
Tamanho máximo de um caminho de campo | 1500 bytes |
Tamanho máximo de um valor de campo | 1 MiB - 89 bytes (1 048 487 bytes) |
Profundidade máxima dos campos num mapa ou numa matriz | 20 Os campos de matriz e de mapa adicionam um nível à profundidade geral de um objeto. Por exemplo, o seguinte objeto tem uma profundidade total de três níveis:
|
Escritas e transações
Além destes limites, também deve consultar as práticas recomendadas para criar designs em grande escala.
Limite | Detalhes |
---|---|
Tamanho máximo do pedido de API | 10 MiB |
Limite de tempo para uma transação | 270 segundos, com um tempo de expiração de inatividade de 60 segundos |
Número máximo de transformações de campos que podem ser realizadas num único documento numa operação Commit ou numa transação |
500 |
Índices
Os seguintes limites aplicam-se aos índices de campo único e aos índices compostos:
Esta página identifica as quotas e os limites de pedidos para o Firestore.
Limite | Detalhes |
---|---|
Número máximo de índices compostos para uma base de dados |
|
Número máximo de configurações de campo único para uma base de dados |
Uma configuração ao nível do campo pode conter várias configurações para o mesmo campo. Por exemplo, uma isenção de indexação de campo único e uma política de TTL no mesmo campo contam como uma configuração de campo para o limite. |
Número máximo de entradas de índice para cada documento |
40 000 O número de entradas de índice é a soma do seguinte para um documento:
Para ver como o Firestore transforma um documento e um conjunto de índices em entradas de índice, consulte este exemplo de contagem de entradas de índice. |
Número máximo de campos num índice composto | 100 |
Tamanho máximo de uma entrada de índice |
7,5 KiB Para ver como o Firestore calcula o tamanho da entrada do índice, consulte o tamanho da entrada do índice. |
Soma máxima dos tamanhos das entradas de índice de um documento |
8 MiB O tamanho total é a soma do seguinte para um documento: |
Tamanho máximo de um valor de campo indexado |
1500 bytes Os valores dos campos com mais de 1500 bytes são truncados. As consultas que envolvem valores de campos truncados podem devolver resultados inconsistentes. |
Tempo de vida (TTL)
Limite | Detalhes |
---|---|
Número máximo de configurações de campo único para uma base de dados |
Uma configuração ao nível do campo pode conter várias configurações para o mesmo campo. Por exemplo, uma isenção de indexação de campo único e uma política de TTL no mesmo campo contam como uma configuração de campo para o limite. |
Exportação/importação
Os seguintes limites aplicam-se às operações de importação e exportação geridas:
Limite | Detalhes |
---|---|
Número total máximo de pedidos de exportação e importação para um projeto permitidos por minuto | 20 |
Número máximo de exportações e importações simultâneas | 50 |
Número máximo de filtros de ID de coleções para pedidos de exportação e importação | 100 |
Regras de segurança
Limite | Detalhes |
---|---|
Número máximo de chamadas exists() , get() e getAfter() por pedido |
Se exceder qualquer um dos limites, recebe um erro de acesso negado. Algumas chamadas de acesso a documentos podem ser colocadas em cache e as chamadas em cache não contam para os limites. |
Profundidade máxima da declaração match aninhada |
10 |
Comprimento máximo do caminho, em segmentos do caminho, permitido num conjunto de declarações aninhadas
match |
100 |
Número máximo de variáveis de captura de caminho permitidas num conjunto de
declarações match aninhadas |
20 |
Profundidade máxima de chamadas de funções | 20 |
Número máximo de argumentos de funções | 7 |
Número máximo de associações de variáveis let por função |
10 |
Número máximo de chamadas de funções recursivas ou cíclicas | 0 (não permitido) |
Número máximo de expressões avaliadas por pedido | 1000 |
Tamanho máximo de um conjunto de regras | Os conjuntos de regras têm de obedecer a dois limites de tamanho:
|
Monitorizar a utilização
Pode ver a sua utilização do Firestore nas páginas Quotas da API Cloud Firestore e Quotas do App Engine.