Cotas e limites

Esta página descreve as cotas e os limites de produção do Spanner. A cota e o limite podem ser usados alternadamente no console do Google Cloud.

Esses valores estão sujeitos a alterações.

Permissões para verificar e editar cotas

Para acessar suas cotas, você precisa ter a permissão serviceusage.quotas.get permissão do Identity and Access Management (IAM).

Para mudar as cotas, você precisa ter a permissão serviceusage.quotas.update IAM. Por padrão, ela está incluída nos seguintes papéis predefinidos: proprietário, editor e administrador de cotas.

Essas permissões são incluídas por padrão no papéis básicos do IAM proprietário e editor e no papel predefinido de Administrador de cotas.

Verificar suas cotas

Para verificar as cotas atuais dos recursos no seu projeto, use o Console do Google Cloud:

Acessar "Cotas"

Aumentar suas cotas

À medida que você usa mais o Spanner, as cotas podem aumentar proporcionalmente. Se você espera um aumento significativo no uso, faça a solicitação com alguns dias de antecedência para garantir que as cotas tenham o tamanho adequado.

Talvez também seja necessário aumentar a substituição da cota do consumidor. Para mais informações, consulte Como criar uma substituição de cota do consumidor.

É possível aumentar o limite de nós de configuração da instância do Spanner usando o console do Google Cloud.

  1. Acesse a página Cotas.

    Acessar a página "Cotas"

  2. Selecione API Spanner na lista suspensa Serviço.

    Se você não encontrar a API Spanner, o Spanner A API não foi ativada. Para mais informações, consulte Como ativar APIs.

  3. Selecione as cotas que você quer alterar.

  4. Clique em Editar cotas.

  5. No painel Mudanças de cota que aparece, insira o novo limite de cota.

    Captura de tela da janela de criação de instância

  6. Clique em Concluído e em Enviar solicitação.

    Se não for possível aumentar o limite de nós manualmente, clique em solicitar uma cota maior. Preencha o formulário para enviar uma solicitação para com a equipe do Spanner. Você vai receber uma resposta em até 48 horas após a solicitação.

Aumentar sua cota para uma configuração de instância personalizada

É possível aumentar a cota de nós para a configuração personalizada da instância.

  1. Verificar o limite de nós de uma configuração de instância personalizada verificando o nó máximo da configuração da instância base.

    Use a opção Mostrar detalhes das configurações da instância. se você não souber ou se lembrar da base da configuração da instância personalizada.

  2. Se o limite de nós necessário para a configuração da instância personalizada for menor que 85, siga as instruções na seção Aumentar suas cotas anterior. Use o console do Google Cloud para aumentar o limite de nós da configuração da instância básica associada à instância personalizada; configuração do Terraform.

    Se o limite de nós exigido para a configuração da instância personalizada for maior de 85, preencha a seção Solicitar um aumento de cota para seus nós do Spanner forma Especifique o ID da configuração da instância personalizada no formulário.

Limites de nós

Valor Limite
Nós por configuração de instância

Os limites padrão variam de acordo com o projeto e a configuração da instância. Para alterar os limites de cota do projeto ou solicitar um aumento de limite, consulte Aumente seu cotas.

Limites de instância

Valor Limite
Comprimento do ID da instância 2 a 64 caracteres

Limites de instâncias de teste gratuito

Uma instância de teste gratuito do Spanner tem os seguintes limites adicionais: Para aumentar ou remover esses limites, faça upgrade da sua instância de teste gratuita para uma paga.

Valor Limite
Capacidade de armazenamento 10 GB
Limite do banco de dados Crie até cinco bancos de dados
Recursos não suportados Backup e restauração
SLA Sem garantias de SLA
Duração do teste Período de teste gratuito de 90 dias

Limites de configuração de instâncias

Valor Limite
Configurações máximas de instâncias personalizadas por projeto 100
Tamanho do ID de configuração da instância personalizada

8 a 64 caracteres

Um ID de configuração de instância personalizada precisa começar com custom-.

Limites do particionamento geográfico

Valor Limite
Número máximo de partições por instância 10
Número máximo de linhas de posicionamento por nó na partição9 20 milhões

Limites de bancos de dados

  • Para instâncias de 1 nó (1.000 unidades de processamento) e maiores: 4 TB por nó
  • Para instâncias menores que 1 nó: 409,6 GB por 100 unidades de processamento

A capacidade de armazenamento aumentada de 10 TB por nó está disponível na maioria das configurações de instâncias regionais, birregionais e multirregionais do Spanner. Para mais informações, consulte Melhorias de desempenho e armazenamento.

Os backups são armazenados separadamente e não entram na conta do limite. Para mais informações, consulte Métricas de utilização do Storage.

O Spanner cobra pelo armazenamento real utilizado em uma instância, e não pelo armazenamento total disponível.

Valor Limite
Bancos de dados por instância
  • Para instâncias de 1 nó (1.000 unidades de processamento) e maiores: 100 bancos de dados
  • Para instâncias com menos de um nó: 10 bancos de dados por 100 unidades de processamento
Papéis por banco de dados 100
Comprimento do ID do banco de dados 2 a 30 caracteres
Tamanho do armazenamento1

Limites de backup e restauração

Valor Limite
Número de operações de criação de backup em andamento por banco de dados 1
Número de operações de restauração de banco de dados em andamento por instância (na instância do banco de dados restaurado, não no backup) 10
Tempo de retenção máximo do backup Um ano (incluindo o dia extra em anos bissextos)

Limites de esquemas

Instruções DDL

Valor Limite
Tamanho da instrução DDL para uma única mudança de esquema 10 MB
Tamanho da instrução DDL para todo o esquema de um banco de dados, conforme retornado por GetDatabaseDdl 10 MB

Tabelas

Valor Limite
Tabelas por banco de dados 5,000
Comprimento do nome da tabela 1 a 128 caracteres
Colunas por tabela 1.024
Comprimento do nome da coluna 1 a 128 caracteres
Tamanho dos dados por célula 10 MiB
Tamanho de uma célula STRING 2.621.440 caracteres Unicode
Número de colunas em uma chave de tabela

16

Inclui colunas de uma chave compartilhadas com qualquer tabela pai

Profundidade de intercalação da tabela

7

Uma tabela de nível superior com tabelas filhas tem profundidade 1.

Uma tabela de nível superior com tabelas netas tem profundidade 2 e assim por diante.

Tamanho total de uma chave de índice ou de tabela

8 KB

Inclui o tamanho de todas as colunas que compõem a chave

Tamanho total das colunas sem chave

1.600 MB

Inclui o tamanho de todas as colunas sem chave de uma tabela

Índices

Valor Limite
Índices por banco de dados 10.000
Índices por tabela 128
Comprimento do nome do índice 1 a 128 caracteres
Número de colunas em uma chave de índice

16

O número de colunas indexadas (exceto as colunas de STORING) mais o número de colunas da chave primária na tabela base

Visualizações

Valor Limite
Visualizações por banco de dados 5,000
Ver tamanho do nome 1 a 128 caracteres
Profundidade de aninhamento

10

Uma visualização que se refere a outra tem profundidade de aninhamento 1. Uma visualização que se refere a outra visualização que ainda se refere a outra visualização tem profundidade de aninhamento 2 e assim por diante.

Limites de consulta

Valor Limite
Colunas em uma cláusula GROUP BY 1.000
Valores em um operador IN 10.000
Chamadas de funções 1.000
Mesclagens 20
Chamadas de funções aninhadas 75
Cláusulas GROUP BY aninhadas 35
Expressões de subconsulta aninhadas 25
Instruções de subseleção aninhadas 60
Parâmetros 950
Comprimento da instrução de consulta 1 milhão de caracteres
STRUCT campos 1.000
Filhos da expressão de subconsulta 50
Uniões em uma consulta 200

Limites para criar, ler, atualizar e excluir dados

Valor Limite
Tamanho da confirmação (incluindo índices e fluxos de mudanças) 100 MB
Leituras simultâneas por sessão 100
Mutações por confirmação (incluindo índices)2 80.000
Instruções DML particionadas simultâneas por banco de dados 20.000

Limites administrativos

Valor Limite
Tamanho da solicitação de ações administrativas3 1 MB
Limitação de taxa para ações administrativas4

Cinco por segundo, por projeto e por usuário

(média de mais de 100 segundos)

Limites de solicitações

Valor Limite
Tamanho da solicitação, que não seja o das confirmações5 10 MB

Mudar os limites do fluxo

Valor Limite
Fluxos de alteração por banco de dados 10
Streams de alteração que estão assistindo qualquer coluna sem chave6 3
Leitores simultâneos por partição de dados do fluxo de alterações7 5

Limites do Data Boost

Valor Limite
Solicitações simultâneas do Data Boost por projeto em us-central1 1000 8
Solicitações simultâneas do Data Boost por projeto e região em outras regiões 400 8

Observações

1. Para você usar o Cloud Spanner e acessar um banco de dados com alta disponibilidade e baixa latência, os limites de armazenamento são definidos com base na capacidade de computação da instância:

  • Para instâncias com menos de um nó (1.000 unidades de processamento), O Spanner aloca 409,6 GB de dados para cada 100 unidades de processamento no banco de dados.
  • Para instâncias de um nó ou mais, o Spanner aloca 4 TB de dados para cada nó.

Por exemplo, para criar uma instância para um banco de dados de 600 GB, é preciso definir a capacidade de computação como 200 unidades de processamento. Essa quantidade de capacidade de computação manterá a instância abaixo do limite até que o banco de dados aumente para mais de 819,2 GB. Depois que o banco de dados atingir esse tamanho, você precisará adicionar mais 100 unidades de processamento para que o banco de dados possa crescer. Caso contrário, as gravações no banco de dados podem ser rejeitadas. Para mais informações, consulte Recomendações para a utilização do armazenamento do banco de dados.

Para uma experiência de crescimento tranquila, adicione capacidade de computação antes do limite seu banco de dados.

2. As operações de inserção e atualização consideram a multiplicidade do número de colunas que elas afetam, e as colunas de chave primária são sempre afetadas. Por exemplo, inserir um novo registro poderá contabilizar cinco mutações caso os valores sejam inseridos em cinco colunas. A atualização de três colunas em um registro também poderá contar como cinco mutações se o registro tiver duas colunas de chave primária. As operações de exclusão e de remoção de intervalos contam como uma mutação, independentemente do número de colunas afetadas. Excluir uma linha de uma tabela mãe que tem a anotação ON DELETE CASCADE também conta como uma mutação, independentemente do número de linhas filhas intercaladas. A exceção é que, se houver índices secundários definidos em linhas que estejam sendo excluídas, as alterações nos índices secundários serão contadas individualmente. Por exemplo, se uma tabela tem dois índices secundários, a exclusão de um intervalo de linhas na tabela conta como 1 mutação da tabela, mais 2 mutações para cada linha que é excluída porque as linhas no índice secundário podem estar espalhadas pelo espaço da chave, tornando é impossível para o Spanner chamar uma única operação de exclusão de intervalo índices secundários. Índices secundários incluem os índices de backup de chaves externas.

Para encontrar a contagem de mutações de uma transação, consulte Como recuperar estatísticas de confirmação para uma transação.

Os fluxos de alterações não adicionam mutações que contam para esse limite.

3. O limite de uma solicitação de ação administrativa exclui confirmações, solicitações listadas na observação 5 e alterações de esquemas.

4. Essa limitação de taxa inclui todas as chamadas para a API admin, inclusive chamadas para apurar operações de longa duração em uma instância, um banco de dados ou um backup.

5. Esse limite inclui solicitações de criação e atualização de um banco de dados, leitura, streaming de leituras, execução de consultas SQL e realização de consultas SQL de streaming.

6. Um fluxo de alterações que monitora uma tabela ou um banco de dados inteiro implicitamente monitora cada coluna nessa tabela ou banco de dados e, portanto, conta para esse limite.

7. Esse limite se aplica a leitores simultâneos da mesma partição de fluxos de mudanças, sejam eles pipelines do Dataflow ou consultas diretas de API.

8. Os limites padrão variam de acordo com o projeto e as regiões. Para mais informações, consulte Monitorar e gerenciar o uso da cota do Data Boost.

9. Com o particionamento geográfico, a maioria das partições tem um limite de 20 milhões de linhas de posicionamento por nó. As partições que usam as configurações us-west4, nam10 e nam-eur-asia1 têm um limite de 10 milhões de linhas de posicionamento por nó.