Escalonamento

Escalonar um cluster é o processo de adicionar ou remover nós do cluster em resposta a alterações na carga de trabalho ou nas necessidades de repositório de dados do cluster. Ao criar um cluster, também é possível configurar o fator de escalonamento de nós para o cluster. Antes de configurar o escalonamento, entenda as limitaçõ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 sob carga pesada e o uso da CPU estiver alto, adicione nós ao cluster até que o uso da CPU diminua. Também é possível economizar dinheiro removendo nós do cluster quando ele não estiver sendo muito usado.

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

Escalonamento horizontal

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

Escalonamento vertical da camada na memória

A camada na memória do Bigtable usa escalonamento vertical totalmente gerenciado para capacidade de processamento, o que permite que os clusters respondam quase instantaneamente a picos no tráfego de leitura pontual.

O escalonamento vertical ajusta automaticamente cada nó para acomodar as demandas de carga de trabalho e funciona perfeitamente com o escalonamento automático do Bigtable. Cada nó do Bigtable com a camada na memória ativada tem um limite de escalonamento vertical. Se esse limite for atingido, o escalonamento automático do Bigtable adicionará nós dentro da configuração máxima de nós para dar suporte à carga de trabalho e reequilibrar o tráfego.

Para mais informações sobre os limites de escalonamento vertical, consulte Cotas e limites. Para mais informações sobre a capacidade de processamento na memória por nó, consulte Entender o desempenho.

Fator de escalonamento do nó

Ao criar um cluster do Bigtable, é possível configurá-lo com um fator de escalonamento de nós de 2x. Quando você escolhe essa configuração, o Bigtable trata dois nós padrão como um nó de computação único 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ós 2x incluem:

  • Melhoria na capacidade de processamento 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ós de 2x ativado ao usar o console doGoogle Cloud ou a CLI gcloud.

É possível configurar o escalonamento de nós em 2X com escalonamento automático ou alocação manual de nós. Na edição Enterprise Plus, é preciso ativar o escalonamento de nós 2x para acessar o limite expandido de armazenamento em níveis de 64 TB por nó (pré-lançamento).

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

Clusters pequenos

O escalonamento de nós 2x é ideal para cargas de trabalho maiores. Se você estiver pensando em mudar do escalonamento de nós padrão (por um fator de um) para o escalonamento de nós 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 nós 2x custa o dobro. Da mesma forma, usar o escalonamento de nós de 2x para uma carga de trabalho que antes era executada em um cluster com 3 nós aumenta os custos em 33%.

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

Limitações

O escalonamento de clusters está sujeito à disponibilidade de nós, 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 ao escalonamento de nós 2x.

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 terminará.

Para planejar esse atraso, adicione nós ao cluster, de maneira programática ou por meio do 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. Nos clusters que usam o escalonamento automático, altere o número mínimo de nós. Quando o tráfego voltar ao normal, altere as configurações de nó novamente.

O nível na memória lida com picos de tráfego com escalonamento vertical quase instantâneo. Quando o Bigtable adiciona nós por meio do escalonamento automático e a capacidade de processamento do nível na memória aumenta, ele gerencia automaticamente a fragmentação de dados no nível na memória.

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

Ao diminuir o número de nós em um cluster para reduzir escala vertical, tente não diminuir o tamanho do cluster em mais de 10% em um período de 10 minutos. A redução de escala vertical muito rápida pode causar problemas de desempenho, como aumento da latência, se os nós restantes no 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, adicionar 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 detalhes sobre como projetar um esquema que permita ao Bigtable escalonar de maneira eficaz.

Limitações das edições

A camada na memória e o escalonamento vertical estão disponíveis apenas para clusters SSD na edição Enterprise Plus.

Limitações do fator de escalonamento de nós

Não é possível converter um cluster com escalonamento de nós padrão para usar o escalonamento de nós 2x. É preciso criar um novo cluster e ativar o escalonamento de nós 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ós 2x para um cluster de HDD.

A seguir