Escalonamento

Escalonar um cluster é o processo de adicionar ou remover nós de um cluster em resposta a mudanças na carga de trabalho ou nas necessidades de armazenamento de dados do cluster.

É possível escalonar um cluster Bigtable das seguintes maneiras:

Na maioria dos casos, escolha o escalonamento automático. Quando você ativa o escalonamento automático em um cluster, o Bigtable monitora continuamente o cluster e ajusta automaticamente o número de nós com base nas suas configurações.

É possível escalonar o cluster do Bigtable com base em métricas, como o uso da CPU do cluster. Por exemplo, se o cluster estiver com uma grande carga e a utilização da CPU for alta, adicione nós ao cluster até que o uso da CPU caia. Para economizar dinheiro, remova os nós do cluster quando ele não estiver sendo muito usado.

Fator de escalonamento do nó

Ao criar um cluster do Bigtable, você tem a opção de configurar o cluster com um fator de escalonamento de nó 2x. Quando você escolhe essa configuração, o Bigtable trata dois nós padrão como um nó de computação único e maior, e o cluster é sempre escalonado em incrementos de dois nós. Como resultado, há menos limites de computação entre os nós no cluster. Dependendo da carga de trabalho, os benefícios do escalonamento de nó 2x incluem:

  • Melhoria na capacidade e na estabilidade da latência de cauda
  • Maior capacidade de absorver pontos de acesso

É possível criar um cluster com o fator de escalonamento de nó 2x ativado ao usar o console do Google Cloud ou a CLI gcloud.

É possível configurar o escalonamento de 2 nós com o escalonamento automático ou a alocação manual de nós.

Para ver as limitações, consulte Limitações do fator de escalonamento de nós.

Clusters pequenos

O escalonamento de 2 nós é ideal para cargas de trabalho maiores. Se você estiver pensando em mudar do escalonamento de nó padrão (por um fator de um) para o escalonamento de 2x, considere as implicações de custo. Para uma carga de trabalho menor, como uma que é executada em um cluster com um nó, o uso do escalonamento de 2x do nó custa o dobro. Da mesma forma, o uso de escalonamento de nó 2x para uma carga de trabalho que antes era executada em um cluster com três nós aumenta os custos em 33%.

Por outro lado, para uma carga de trabalho executada anteriormente em um cluster grande, como um cluster com 50 nós, o efeito de um fator de escalonamento de 2x é pequeno em relação ao número de nós.

O Bigtable vai retornar um erro se você tentar criar um cluster com fator de escalonamento de nó 2x em uma zona sem suporte.

Limitações

O escalonamento do cluster está sujeito à disponibilidade do nó, leva tempo para ser concluído, não pode compensar um design de esquema inadequado e precisa ser feito gradualmente. As seções a seguir descrevem essas limitações, bem como as limitações que se aplicam à escala de 2x do nó.

Disponibilidade de nós

Elas se aplicam se um cluster tiver a alocação de nós manual ou o escalonamento automático ativados. Consulte os detalhes em Disponibilidade de nós e cotas.

Atraso no reequilíbrio dos nós

Após adicionar nodes ao cluster, é necessário esperar até 20 minutos sob carga para ver uma melhoria significativa no desempenho do cluster. Se a carga de trabalho envolver breves bursts de alta atividade, a adição de nós ao cluster com base na carga da CPU não melhorará o desempenho. Quando o Bigtable reequilibrar os dados, o breve burst da atividade vai terminar.

Para planejar esse atraso, adicione nós ao cluster, de maneira programática ou pelo console do Google Cloud , antes de aumentar a carga no cluster. Essa abordagem dá ao Bigtable tempo para reequilibrar os dados entre os nós adicionais antes que a carga de trabalho aumente. Em clusters que usam alocação manual de nós, altere o número de nós. Em clusters que usam o escalonamento automático, altere o número mínimo de nós. Quando o tráfego voltar ao normal, mude as configurações do nó novamente.

Aumentos de latência devido a uma redução muito rápida

Ao diminuir o número de nós em um cluster para realizar uma redução, tente não reduzir o tamanho do cluster em mais de 10% em um período de 10 minutos. A redução muito rápida pode causar problemas de desempenho, como o aumento de latência, se os outros nós do cluster ficarem temporariamente sobrecarregados.

Problemas de design do esquema

Se houver problemas com o design do esquema para a tabela, adicionar nós ao cluster do Cloud Bigtable pode não melhorar o desempenho. Por exemplo, se você tiver um grande número de leituras ou gravações em uma única linha da tabela, todas as leituras ou gravações vão para o mesmo nó no cluster. Como resultado, a adição de nós não melhora o desempenho. Em contrapartida, se as leituras e as gravações estiverem distribuídas uniformemente entre as linhas da tabela, a adição de nós melhorará o desempenho em geral.

Consulte Como projetar seu esquema para saber como projetar um esquema que permita o escalonamento eficaz do Bigtable.

Limitações do fator de escalonamento do nó

Não é possível converter um cluster com escalonamento de nó padrão para usar o escalonamento de nó 2x. É necessário criar um novo cluster e ativar o escalonamento de nó 2x no momento da criação. Para mais informações sobre como adicionar um cluster a uma instância, consulte Modificar uma instância.

Não é possível configurar o escalonamento de nó 2x para um cluster de HDD.

É possível criar clusters configurados com escalonamento de nó 2x em todas as regiões do Bigtable, mas não em todas as zonas. As zonas a seguir não podem conter um cluster com escalonamento de nó 2x:

  • asia-south1-c
  • europe-central2-c
  • me-central2-b
  • me-central2-c
  • northamerica-northeast1-a
  • northamerica-northeast1-b
  • southamerica-east1-c
  • us-south1-b
  • us-south1-c

A seguir