Este documento indica as quotas e os limites do sistema aplicáveis ao AlloyDB para PostgreSQL.
- As quotas têm valores predefinidos, mas normalmente pode pedir ajustes.
- Os limites do sistema são valores fixos que não podem ser alterados.
Quotas
Google Cloud usa quotas para ajudar a garantir a equidade e reduzir os picos na utilização e disponibilidade de recursos. Uma quota restringe a quantidade de um Google Cloud recurso que o seu Google Cloud projeto pode usar. As quotas aplicam-se a uma variedade de tipos de recursos, incluindo componentes de hardware, software e rede. Por exemplo, as quotas podem restringir o número de chamadas API para um serviço, o número de balanceadores de carga usados em simultâneo pelo seu projeto ou o número de projetos que pode criar. As quotas protegem a comunidade de Google Cloud utilizadores, impedindo a sobrecarga dos serviços. As quotas também ajudam a gerir os seus próprios Google Cloud recursos.
O sistema de quotas da nuvem faz o seguinte:
- Monitoriza o seu consumo de Google Cloud produtos e serviços
- Restringe o seu consumo desses recursos
- Oferece uma forma de pedir alterações ao valor da quota e automatizar os ajustes de quotas
Na maioria dos casos, quando tenta consumir mais de um recurso do que a respetiva quota permite, o sistema bloqueia o acesso ao recurso e a tarefa que está a tentar realizar falha.
Geralmente, as quotas aplicam-se ao nível do Google Cloud projeto A sua utilização de um recurso num projeto não afeta a sua quota disponível noutro projeto. Num Google Cloud projeto, as quotas são partilhadas por todas as aplicações e endereços IP.
Para mais informações, consulte a vista geral das quotas da nuvem.Google Cloud também oferece quotas de avaliação gratuita que fornecem acesso limitado aos projetos para ajudar a explorar Google Cloud sem custo financeiro.
Nem todos os projetos têm as mesmas quotas. Se a sua Google Cloud utilização aumentar, as suas quotas podem aumentar.
Para mais informações sobre quotas, consulte a documentação das Cloud Quotas.
Para informações específicas sobre as quotas impostas pelo AlloyDB, consulte as secções Quotas de taxa e Quotas de recursos.
Também existem limites nos recursos do AlloyDB. Ao contrário das quotas, não é possível alterar os limites do sistema.
Autorizações para verificar e editar quotas
Para ver as suas quotas, tem de ter a autorização
serviceusage.quotas.get
.
Para alterar as suas quotas, tem de ter a autorização
serviceusage.quotas.update
.
Estas autorizações estão incluídas por predefinição nas funções básicas do IAM de proprietário e editor, e na função de administrador de quotas predefinida.
Verifique as suas quotas
Por predefinição, a tabela de quotas na Google Cloud consola apresenta quotas para todos os serviços. Pode verificar as quotas atuais dos recursos do AlloyDB no seu projeto através da lista Filtrar na tabela.
Para verificar as quotas atuais dos recursos do AlloyDB no seu projeto, conclua os seguintes passos:
Na Google Cloud consola, aceda à página Quotas.
Na tabela de quotas, clique em Filtrar.
Selecione Serviço na lista Propriedades e, de seguida, selecione API AlloyDB na lista Valores.
Aumente as suas quotas
À medida que a sua utilização do Google Cloud se expande ao longo do tempo, as suas quotas podem aumentar em conformidade. Se prevê um aumento notável da utilização, faça o pedido com alguns dias de antecedência para garantir que as suas quotas têm o tamanho adequado.
- Na página Quotas, clique em Filtrar.
Selecione Serviço na lista Propriedades e, de seguida, selecione API AlloyDB na lista Valores.
Se não vir API AlloyDB, significa que a API AlloyDB Admin não está ativada.
Selecione as quotas que quer alterar.
Clique em Editar quotas.
Introduza o seu nome, email e número de telefone, e clique em Seguinte.
Introduza o seu pedido de quota e clique em Enviar pedido.
Quotas de tarifas
O AlloyDB suporta quotas de taxa, também conhecidas como limites de taxa ou quotas de API. As quotas de taxa definem o número de pedidos que pode fazer à API AlloyDB.
Cada quota de taxa corresponde a todos os pedidos de um grupo de um ou mais métodos da AlloyDB API. As quotas de taxa são repostas após um intervalo de tempo específico do serviço, por exemplo, o número de pedidos de API por dia.
Quando usa a CLI Google Cloud ou a Google Cloud consola, está a fazer pedidos à API, e estes pedidos contam para os seus limites de taxa. Se usar contas de serviço para aceder à API, esses pedidos também contam para o seu limite de taxa.
As quotas de taxa são aplicadas e repostas automaticamente em intervalos de 60 segundos (1 minuto). Isto significa que, se o seu projeto atingir o máximo de uma quota de taxa em qualquer altura no prazo de 60 segundos, tem de aguardar que essa quota seja reposta antes de fazer mais pedidos nesse grupo. Se o seu projeto exceder um limite de taxa, recebe um código de estado HTTP
429
com o motivo rateLimitExceeded
.
As APIs AlloyDB estão divididas em seis grupos com base no tipo de operação. As quotas de taxa são impostas por minuto, por grupo de APIs, por projeto, por região e por utilizador. Para cada combinação única destes atributos, o AlloyDB impõe uma quota separada. Por exemplo, se 100 utilizadores estiverem a aceder às APIs Mutate num único minuto para um determinado projeto e região, cada utilizador recebe uma quota predefinida no intervalo de 180 a 250 pedidos por minuto para cada combinação de projeto e região.
O intervalo de quota predefinido para cada grupo é o seguinte:
Nome do grupo | Descrição | Intervalo de quota predefinido em consultas por minuto | Métodos da API |
---|---|---|---|
APIs de ligação | Estabelecer novas ligações. | 180-2000 |
|
Obtenha APIs | Ler um único recurso. | 180-1000 |
|
API Get operation | Obtenha o estado mais recente de uma operação de execução longa. | 950-1400 |
|
APIs List | Ler um grupo de recursos do mesmo tipo. | 180-1000 |
|
API List operations | Lista as operações que correspondem a um filtro específico no pedido. | 2200-3000 |
|
APIs de mutação | Modificar o estado do recurso. | 180-250 |
|
Quotas de recursos
O AlloyDB suporta quotas de recursos, também conhecidas como quotas de atribuição. As quotas de recursos são a quantidade máxima de recursos que pode criar para um tipo de recurso, se esses recursos estiverem disponíveis. As quotas de recursos restringem a utilização de recursos que não têm uma taxa de utilização, como o número de instâncias de máquinas virtuais (VM) usadas pelo seu projeto num determinado momento.
As quotas de recursos não são repostas ao longo do tempo. Em alternativa, tem de tomar medidas para libertar os recursos não usados, como eliminar um cluster desnecessário.
As quotas de recursos são impostas ao número de clusters e vCPUs usados, conforme detalhado nas secções seguintes.
Quotas de recursos em clusters
Esta quota aplica-se ao número de clusters por projeto por região. O valor predefinido desta quota varia entre 3 e 10 clusters por projeto por região, dependendo do histórico de utilização do projeto. O valor máximo suportado para esta quota é de 15 clusters por projeto por região.
Se fizer um pedido de criação ou restauro de um cluster através da Google Cloud consola, da CLI gcloud ou da API AlloyDB, e se isso resultar numa violação de quota, o pedido falha com uma mensagem de erro semelhante à seguinte:
Quota limit 'ClustersUsedPerProjectPerRegion' has been exceeded. Limit: 5 in region us-central1.
Quotas de recursos em vCPUs
Esta quota aplica-se ao número de vCPUs por projeto por região. Cada instância consome uma determinada quantidade desta quota, consoante o número de VMs que usa. Cada instância principal usa duas VMs. Cada instância do conjunto de leitura usa uma VM para cada nó que contém. O número de vCPUs usadas por cada VM é fornecido por si durante a criação ou a atualização da instância.
O valor predefinido da quota para todos os projetos de clientes é de 10 000 vCPUs.
Se fizer um pedido de criação ou atualização de instância através da Google Cloud consola, da CLI gcloud ou da API AlloyDB e se isso resultar numa violação de quota, o pedido falha com uma mensagem de erro semelhante à seguinte:
Quota limit 'VCPUsUsedPerProjectPerRegion' has been exceeded. Limit: 128 in region us-central1.
Quotas de recursos no armazenamento
Esta quota aplica-se à quantidade de dados que podem ser armazenados em cada cluster. O valor predefinido para esta quota é de 16 TiB por cluster. O valor máximo suportado é de 128 TiB por cluster.
Se fizer um pedido de gravação na base de dados, como uma declaração INSERT
que resulte numa violação de quota, o pedido falha com a seguinte mensagem de erro:
AlloyDB instance exceeds available storage quota.
Disponibilidade de recursos
As quotas de recursos não garantem que os recursos estejam disponíveis em todos os momentos. Se um recurso não estiver fisicamente disponível para a sua região, não pode criar novos recursos desse tipo, mesmo que tenha quota restante no seu projeto.
Limites
Para pedir um aumento do limite, apresente um registo de apoio técnico.
Item | Limite |
---|---|
Ler nós do conjunto por cluster (em todas as instâncias do conjunto de leitura) | 20 |
Número máximo de ligações simultâneas por instância | A predefinição é 1000; ajustável até 240 000 |
Número máximo de ligações simultâneas
O AlloyDB limita as ligações simultâneas máximas de uma instância a 1000, a menos que defina a respetiva flag max_connections
para um valor superior.
Use a tabela seguinte como orientação para decidir o valor de ligações máximas com base no tamanho da instância:
VCPU | Memória | Valor max_connections recomendado |
---|---|---|
1 | 8 | 500 |
2 | 16 | 1000 |
4 | 32 | 2000 |
8 | 64 | 4000 |
16 | 128 | 5000 |
32 | 256 | 5000 |
48 | 384 | 5000 |
64 | 512 | 5000 |
72 | 576 | 5000 |
96 | 768 | 5000 |
128 | 864 | 5000 |
Tenha em atenção as seguintes considerações antes de definir o valor:
- Quando define o sinalizador
max_connections
numa instância do conjunto de leitura, o novo valor tem de corresponder ou exceder o valormax_connections
da instância principal do respetivo cluster. - Recomendamos a execução de um máximo de quatro consultas simultâneas por vCPU de instância.
- Para cargas de trabalho que envolvam ligações de curto prazo, considere usar um agrupador de ligações, como o pgbouncer ou o pgpool-II.
- Recomendamos que adicione um pooler de ligações do lado da aplicação, como o HikariCP ou o c3p0.
Se decidir definir o valor para um valor superior às recomendações (até 240 000), considere o consumo de memória adicional para cada ligação ativa que reduziria a memória para o buffer partilhado.
Este 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 predefinido para este sinalizador é4MB
ou o número de vCPUs na instância, consoante o que for superior.
Limites de consultas guardadas
Valor | Limite |
---|---|
Número máximo de consultas guardadas por projeto (incluindo consultas guardadas para outros Google Cloud produtos) | 10 000 |
Tamanho máximo para cada consulta | 1 MiB |