Cotas e limites

Nesta página, descrevemos as cotas e os limites de produção do Spanner. As cotas e os limites podem ser usados de modo intercambiável no console do Google Cloud.

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

Permissões para verificar e editar cotas

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

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

Essas permissões são incluídas por padrão nos papéis básicos do IAM de 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:

Acesse 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 uma 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 modificação de cota do consumidor.

É possível aumentar o limite atual 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, isso significa que a API Spanner 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 Alterações de cota, insira o novo limite.

    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 até o limite desejado manualmente, clique em Inscrever-se para uma cota maior. Preencha o formulário para enviar uma solicitação à equipe do Spanner. Você receberá uma resposta 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. Para verificar o limite de nós de uma configuração de instância personalizada, verifique o limite do nó da configuração da instância base.

    Use o comando show instance configuration details se você não souber ou se lembrar da configuração básica da sua configuração de 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 anterior Aumentar as cotas. Use o console do Google Cloud para aumentar o limite de nós da configuração de instância básica associada à configuração de instância personalizada.

    Se o limite de nós necessário para a configuração da instância personalizada for maior que 85, preencha o formulário Solicitar um aumento de cota para os nós do Spanner. 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 Aumentar suas cotas.

Limites de instâncias

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 limites extras a seguir. Para aumentar ou remover esses limites, faça upgrade da instância de teste gratuito para uma instância paga.

Valor Limite
Capacidade de armazenamento 10 GB
Limite do banco de dados Crie até cinco bancos de dados
Recursos não compatíveis Backup e restauração
no 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 da instância personalizada precisa começar com custom-

Limites de 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ó em sua 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 um nó: 409,6 GB por 100 unidades de processamento.

Um aumento da capacidade de armazenamento de 10 TB por nó está disponível em algumas configurações de instâncias do Spanner regionais e multirregionais. Para mais informações, consulte Melhorias de desempenho e armazenamento.

Os backups são armazenados separadamente e não são contabilizados nesse 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 MB
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 não 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 fluxo de alterações) 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

Limites do fluxo de alterações

Valor Limite
Fluxos de alterações 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 Boost8 200

Observações

1. Para fornecer alta disponibilidade e baixa latência no acesso a um banco de dados, o Spanner define limites de armazenamento 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, é necessário definir a capacidade de computação dele como 200 unidades de processamento. Essa 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, será necessário adicionar mais 100 unidades de processamento para permitir que o banco de dados cresça. 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 que o limite do banco de dados seja atingido.

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 tiver dois índices secundários, a exclusão de um intervalo de linhas na tabela contará como uma mutação para a tabela, mais duas mutações para cada linha que for excluída, porque as linhas no índice secundário podem estar espalhadas pelo espaço de chave, tornando impossível que o Spanner chame uma única operação de exclusão de intervalo nos í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 monitora implicitamente todas as colunas nessa tabela ou banco de dados e, portanto, é contabilizado nesse limite.

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

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

9. A maioria das partições tem um limite de 20 milhões de linhas 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 por nó.