Cotas e limites

Este documento lista as cotas e os limites do sistema que se aplicam ao AlloyDB para PostgreSQL.

  • As cotas especificam a quantidade de um recurso compartilhado e contável que pode ser usado. As cotas são definidas por serviços do Google Cloud , como o AlloyDB para PostgreSQL.
  • Os limites do sistema são valores fixos que não podem ser alterados.

Cotas

Google Cloud usa cotas para garantir a imparcialidade e reduzir picos no uso e na disponibilidade de recursos. Uma cota restringe quanto de um Google Cloud recurso do projeto Google Cloud pode usar. As cotas se aplicam a vários tipos de recursos, incluindo hardware, software e componentes de rede. Por exemplo, as cotas podem restringir o número de chamadas de API para um serviço, o número de balanceadores de carga usados simultaneamente pelo projeto ou o número de projetos que podem ser criados. As cotas protegem a comunidade de Google Cloud usuários, impedindo a sobrecarga de serviços. As cotas também ajudam você a gerenciar seus próprios recursos do Google Cloud .

O sistema de cotas do Cloud faz o seguinte:

  • Monitora o consumo de produtos e serviços do Google Cloud .
  • Restringe o consumo desses recursos.
  • Fornece um meio de solicitar mudanças no valor da cota

Na maioria dos casos, quando você tenta consumir mais de um recurso do que a cota permite, o sistema bloqueia o acesso ao recurso e a tarefa que você está tentando executar falha.

As cotas geralmente se aplicam ao projeto do Google Cloud . O uso de um recurso em um projeto não afeta a cota disponível em outro. Em um projeto do Google Cloud , as cotas são compartilhadas entre todos os aplicativos e endereços IP.

OGoogle Cloud também oferece cotas de teste gratuitas que proporcionam acesso limitado a projetos para ajudar você a conhecer o Google Cloud sem custo financeiro.

Nem todos os projetos têm as mesmas cotas. Se o uso do Google Cloud aumentar, as cotas também podem aumentar.

Para mais informações sobre cotas, consulte este link.

Para informações específicas sobre cotas impostas pelo AlloyDB, consulte Cotas de taxa e Cotas de recursos.

Também há limites para os recursos do AlloyDB. Ao contrário das cotas, os limites do sistema não podem ser alterados.

Permissões para verificar e editar cotas

Para conferir suas cotas, você precisa ter a permissão serviceusage.quotas.get.

Para mudar as cotas, você precisa ter a permissão serviceusage.quotas.update.

Por padrão, elas estão incluídas nos papéis básicos do IAM "Proprietário" e "Editor", assim como no papel predefinido "Administrador de cotas".

Verificar suas cotas

Por padrão, a tabela de cotas no console do Google Cloud lista as cotas de todos os serviços. É possível verificar as cotas atuais dos recursos do AlloyDB no seu projeto usando a lista Filtro na tabela.

Para verificar as cotas atuais dos recursos do AlloyDB no seu projeto, siga estas etapas:

  1. No console do Google Cloud , acesse a página Cotas.

    Acessar "Cotas"

  2. Na tabela de cotas, clique em Filtrar.

  3. Selecione Serviço na lista Propriedades e, em seguida, selecione API AlloyDB na lista Valores.

Aumentar suas cotas

À medida que você usa mais o Google Cloud , 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 limite necessário.

  1. Na página Quotas, clique em Filtrar.
  2. Selecione Serviço na lista Propriedades e, em seguida, selecione API AlloyDB na lista Valores.

    Se você não encontrar a opção API AlloyDB, significa que a API AlloyDB Admin não está ativada.

  3. Selecione as cotas que você quer alterar.

  4. Clique em Editar cotas.

  5. Insira seu nome, e-mail, número de telefone e clique em Próxima.

  6. Insira o pedido de cota e clique em Enviar solicitação.

cotas de taxa.

O AlloyDB aceita cotas de taxa, também conhecidas como limites de taxa ou cotas de API. As cotas de taxa definem o número de solicitações que você pode fazer à API Admin do AlloyDB.

Cada cota de taxa corresponde a todas as solicitações de um grupo de um ou mais métodos da API AlloyDB Admin. As cotas de taxa são redefinidas após um intervalo específico do serviço, por exemplo, o número de solicitações de API por dia.

Ao usar a Google Cloud CLI ou o console do Google Cloud , você faz solicitações à API, que são contabilizadas nos limites de taxa. Se você usar contas de serviço para acessar a API, essas solicitações também serão contabilizadas na limitação de taxa.

As cotas de taxa são aplicadas e recarregadas automaticamente em intervalos de 60 segundos (1 minuto). Isso significa que, se o projeto atingir o máximo de uma cota de taxa a qualquer momento em 60 segundos, será necessário esperar que essa cota seja recarregada antes de fazer mais solicitações nesse grupo. Se o projeto exceder um limite de taxa, você receberá um código de status HTTP 429 com o motivo rateLimitExceeded.

As APIs AlloyDB Admin são divididas em seis grupos com base no tipo de operação. As cotas de taxa são impostas por minuto, por grupo de API, por projeto, por região e por usuário. Para cada combinação exclusiva desses atributos, o AlloyDB impõe uma cota separada. Por exemplo, se 100 usuários estiverem acessando as APIs Mutate em um único minuto para um determinado projeto e região, cada usuário receberá uma cota padrão no intervalo de 180 a 250 solicitações por minuto para cada combinação de projeto e região.

O intervalo de cota padrão para cada grupo é o seguinte:

Nome do grupo Descrição Faixa de cota padrão em consultas por minuto Métodos da API
APIs Connect Estabeleça novas conexões. 180-2000
  • projects.locations.clusters.generateClientCertificate
  • projects.locations.clusters.instances.getConnectionInfo
APIs do Get Leia um único recurso. 180-1000
  • projects.locations.clusters.get
  • projects.locations.clusters.instances.get
  • projects.locations.backups.get
  • projects.locations.get
API Get Operation Receba o estado mais recente de uma operação de longa duração. 950-1400
  • projects.locations.operations.get
Listar APIs Ler um grupo de recursos do mesmo tipo. 180-1000
  • projects.locations.clusters.list
  • projects.locations.clusters.instances.list
  • projects.locations.backups.list
  • projects.locations.supportedDatabaseFlags.list
  • projects.locations.list
API List operations Lista as operações que correspondem a um filtro específico na solicitação. 2200-3000
  • projects.locations.operations.list
Mutar APIs Modificar o estado do recurso. 180-250
  • projects.locations.clusters.create
  • projects.locations.clusters.patch
  • projects.locations.clusters.delete
  • projects.locations.clusters.restore
  • projects.locations.clusters.instances.create
  • projects.locations.clusters.instances.patch
  • projects.locations.clusters.instances.delete
  • projects.locations.clusters.instances.failover
  • projects.locations.clusters.instances.restart
  • projects.locations.backups.create
  • projects.locations.backups.patch
  • projects.locations.backups.delete
  • projects.locations.operations.delete
  • projects.locations.operations.cancel

Cotas de recursos

O AlloyDB oferece suporte a cotas de recursos, também conhecidas como cotas de alocação. As cotas de recursos são a quantidade máxima de recursos que você pode criar para um tipo de recurso, se eles estiverem disponíveis. As cotas de recursos restringem o uso de recursos que não têm uma taxa de uso, como o número de instâncias de máquina virtual (VM) usadas pelo projeto em um determinado momento.

As cotas de recursos não são redefinidas ao longo do tempo. Em vez disso, é necessário tomar medidas para liberar os recursos não utilizados, como excluir um cluster desnecessário.

No momento, as cotas de recursos são impostas ao número de clusters e vCPUs usados, conforme detalhado nas seções a seguir.

Cotas de recursos em clusters

Essa cota se aplica ao número de clusters por projeto e região. O valor padrão dessa cota varia de 3 a 10 clusters por projeto e por região, dependendo do histórico de uso do projeto. O valor máximo aceito para essa cota é de 15 clusters por projeto e por região.

Se você fizer uma solicitação de criação ou restauração de cluster usando o console do Google Cloud , a CLI gcloud ou a API AlloyDB Admin, e se isso resultar em violação de cota, a solicitação falhará com uma mensagem de erro semelhante a esta:

Quota limit 'ClustersUsedPerProjectPerRegion' has been exceeded. Limit: 5 in region us-central1.

Cotas de recursos em vCPUs

Essa cota se aplica ao número de vCPUs por projeto e região. Cada instância consome uma quantidade dessa cota, dependendo de quantas VMs ela usa. Cada instância principal usa duas VMs. Cada instância de pool de leitura usa uma VM para cada nó que contém. O número de vCPUs usado por cada VM é fornecido por você ao criar ou atualizar a instância.

O valor padrão dessa cota varia de 128 a 512 vCPUs por projeto e por região, dependendo do histórico de uso do projeto.

Se você fizer uma solicitação de criação ou atualização de instância usando o console do Google Cloud , a CLI gcloud ou a API AlloyDB Admin, e se isso resultar em violação de cota, a solicitação falhará com uma mensagem de erro semelhante a esta:

Quota limit 'VCPUsUsedPerProjectPerRegion' has been exceeded. Limit: 128 in region us-central1.

Cotas de recursos no armazenamento

Essa cota se aplica à quantidade de dados que podem ser armazenados em cada cluster. O valor padrão dessa cota é 16 TiB por cluster. O valor máximo aceito é de 128 TiB por cluster.

Se você fizer uma solicitação de gravação de banco de dados, como uma instrução INSERT que resulta em violação de cota, a solicitação falhará com a seguinte mensagem de erro:

AlloyDB instance exceeds available storage quota.

Disponibilidade de recursos

As cotas de recursos não garantem que os recursos estejam sempre disponíveis. Se um recurso não estiver fisicamente disponível para sua região, não será possível criar novos recursos desse tipo, mesmo que ainda haja cota restante no projeto.

Limites

Para solicitar um aumento de limite, registre um caso de suporte.

Item Limite
Ler nós do pool de leitura por cluster (em todas as instâncias do pool de leitura) 20
Máximo de conexões simultâneas por instância

O padrão é 1.000; ajustável até 240.000

Máximo de conexões simultâneas

O AlloyDB limita as conexões simultâneas máximas de uma instância a 1.000, a menos que você defina a flag max_connections como um valor mais alto.

Use a tabela a seguir como orientação para decidir o valor máximo de conexões com base no tamanho da sua instância:

VCPU Memória Valor max_connections recomendado
2 16 1000
4 32 2000
8 64 4000
16 128 5000
32 256 5000
64 512 5000
96 768 5000
128 864 5000

Considere as seguintes considerações antes de definir o valor:

  • Quando você define a flag max_connections em uma instância de pool de leitura, o novo valor precisa corresponder ou exceder o valor max_connections da instância principal do cluster.
  • Recomendamos executar no máximo quatro consultas simultâneas por vCPU de instância.
  • Para cargas de trabalho que envolvem conexões de curto prazo, use um pool de conexões, como pgbouncer ou pgpool-II.
  • Recomendamos adicionar um pooler de conexões do lado do aplicativo, como HikariCP ou c3p0.
  • Se você definir um valor maior do que as recomendações (até 240.000), considere o consumo de memória adicional de cada conexão ativa que reduziria a memória do buffer compartilhado.

    Esse consumo de memória pode ser calculado multiplicando o número de consultas simultâneas pelo valor definido para a flag work_mem. O valor padrão dessa flag é 4MB ou o número de vCPUs na instância, o que for maior.