Capacidade computacional, nós e unidades de processamento

Nesta página, descrevemos a capacidade de computação do Cloud Spanner e as duas unidades de medida usadas para quantificar: os nós e as unidades de processamento.

Capacidade de computação

A capacidade de computação define a quantidade de recursos do servidor e de armazenamento que estão disponíveis para os bancos de dados em uma instância. Ao criar uma instância, você especifica a capacidade de computação dela como unidades de processamento ou nós, com 1.000 unidades de processamento iguais a 1 nó.

A unidade de medida usada não importa, a menos que você esteja criando uma instância com capacidade de computação inferior a 1.000 unidades de processamento (1 nó). Nesse caso, é necessário usar unidades de processamento para especificar a capacidade de computação de { 101}a instância.

Ao definir a capacidade de computação, seja criando ou removendo uma instância posteriormente, ao aumentar ou diminuir a capacidade dela, você especifica quantidades de até 1.000 unidades de processamento em múltiplos de 100 unidades de processamento (100, 200, 300 e assim por diante }on) e especifique grandes quantidades em múltiplos de 1.000 unidades de processamento (1.000, 2.000, 3.000 e assim por diante) ou como nós (1, 2, 3 e assim por diante).

Limites de armazenamento de dados

Conforme detalhado em Cotas e limites, para fornecer alta disponibilidade e baixa latência para acessar um banco de dados, o Cloud Spanner define limites de armazenamento com base na capacidade de computação de uma instância:

  • Para instâncias menores que 1 nó (1.000 unidades de processamento), o Cloud Spanner separa 204,8 GB (≈ 205 GB) de dados para cada 100 unidades de processamento no banco de dados.
  • Para instâncias de um nó e maiores, o Cloud Spanner aloca 2 TB de dados para cada nó.

Por exemplo, para criar uma instância para um banco de dados de 300 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 409,6 GB. Depois que o banco de dados atingir esse tamanho, você precisará adicionar mais 100 unidades de processamento para que ele possa crescer. Caso contrário, as gravações no banco de dados poderão ser rejeitadas. Para mais informações, consulte Recomendações para o uso do armazenamento de banco de dados.

Desempenho

Os valores máximos de capacidade de leitura e gravação que uma determinada quantidade de capacidade de computação podem fornecer dependem da configuração da instância, bem como da concepção do esquema e das características do conjunto de dados. Veja mais detalhes nas seções Desempenho da configuração regional e Desempenho da configuração multirregional.

Capacidade de computação e configurações de instância

Conforme descrito em Configurações regionais e multirregionais, o Cloud Spanner distribui uma instância nas zonas de uma ou mais regiões para fornecer alto desempenho e alta disponibilidade. Consequentemente, os recursos do servidor fornecidos pela capacidade de computação da instância também são distribuídos.

Veja um diagrama que ilustra essa distribuição de recursos do servidor.

Duas instâncias criadas em uma configuração regional

Este diagrama mostra duas instâncias com configurações regionais:

  • Instância-A mostra uma instância de 1.000 unidades de processamento (1 nó) com capacidade de computação distribuída consumindo recursos do servidor em cada uma das três zonas.
  • A instância B mostra uma instância de 2.000 unidades de processamento (2 nós) com capacidade de computação distribuída consumindo recursos do servidor em cada uma das três zonas.

Observe o seguinte neste diagrama:

  • Para cada instância, os recursos do servidor são alocados em cada zona da configuração regional. Cada recurso de servidor por zona usa a réplica de dados na respectiva zona. Para informações sobre réplicas de dados nas configurações de instâncias, consulte Configurações regionais e multirregionais. Para informações sobre como o Cloud Spanner mantém essas réplicas de dados sincronizadas, consulte Replicação.

  • Os recursos do servidor para a Instância-A são mostrados em caixas simples, enquanto os recursos para a Instância-B são mostrados em caixas subdivididas em duas partes. Essa diferença ilustra que o Cloud Spanner aloca recursos de servidor de forma diferente para instâncias de tamanhos diferentes:

    • Para instâncias com 1.000 unidades de processamento (1 nó) e menores, o Cloud Spanner aloca recursos de servidor em uma única tarefa de servidor por zona.
    • Para instâncias com mais de 1.000 unidades de processamento (1 nó), o Cloud Spanner aloca recursos de servidor em várias tarefas de servidor por zona, com uma tarefa para cada 1.000 unidades de processamento. O uso de várias tarefas do servidor por zona oferece um desempenho melhor e permite que o Cloud Spanner crie divisões de banco de dados e forneça um desempenho ainda melhor.

Como aumentar e diminuir a capacidade de computação

Depois de criar uma instância, é possível aumentar a capacidade de computação dela mais tarde. Na maioria dos casos, também é possível diminuir a capacidade de computação. Há alguns casos em que não é possível diminuir a capacidade computacional:

  • A remoção da capacidade de computação exigiria que sua instância armazenasse mais de 2 TB de dados por 1.000 unidades de processamento (1 nó).
  • Com base nos padrões históricos de uso, o Cloud Spanner criou um grande número de divisões nos dados da instância, e o Cloud Spanner não consegue gerenciar as divisões depois da remoção. capacidade de computação.

Ao remover a capacidade de computação, monitore a utilização da CPU e solicite latências emCloud Monitoring para garantir que a utilização da CPU permaneça abaixo de 65% para instâncias regionais e de 45% para cada região em instâncias multirregionais. Pode haver um aumento temporário nas latências de solicitação ao remover a capacidade de computação.

Use o Console do Cloud, a ferramenta de linha de comando gcloud ou as bibliotecas de cliente para alterar a capacidade de computação.

O Cloud Spanner não tem um modo de suspensão. A capacidade de computação do Cloud Spanner é um recurso dedicado e, mesmo quando você não está executando uma carga de trabalho, o Cloud Spanner frequentemente realiza trabalhos em segundo plano para otimizar e proteger seus dados.

Capacidade computacional versus réplicas

Se for necessário escalonar verticalmente o servidor e os recursos de armazenamento na instância, aumente a capacidade de computação da instância. Aumentar a capacidade de computação não aumenta o número de réplicas (fixas para uma determinada configuração de instância), mas aumenta os recursos que cada réplica tem na instância. Aumentar a capacidade de computação dá a cada réplica mais CPU e RAM, o que aumenta a capacidade da réplica (ou seja, mais leituras e gravações por segundo podem ocorrer).

A seguir