Este documento descreve os recursos de CPU e o tamanho da memória que você precisa considerar ao instalar o AlloyDB Omni em VMs. Neste documento, presumimos que você esteja familiarizado com o PostgreSQL.
Dimensionamento de instâncias
Escolher o tamanho certo da máquina para o AlloyDB Omni é fundamental para ter o melhor desempenho do seu aplicativo. Reunindo os conceitos deste documento, as entradas para tomar uma decisão sobre o tamanho da máquina garantem que o sistema tenha recursos suficientes para atender ao aplicativo, como a quantidade correta de CPU, RAM e armazenamento.
Recursos de CPU
A instância precisa ter recursos de CPU suficientes para que as operações de estado estável possam ocorrer com utilização de 70% ou menos. Ter recursos de CPU suficientes deixa espaço para a instância lidar com picos de utilização e continuar operando se a utilização do aplicativo aumentar com o tempo. Além disso, garante que você possa realizar operações de manutenção periódicas, como o vácuo. A execução com utilização de 100% ou perto disso pode levar a um desempenho ruim devido à troca de contexto de processo ou de linha de execução ou a efeitos de enfileiramento em outras partes do sistema, já que elas disputam recursos escassos da CPU.
Se o uso de recursos da CPU for consistentemente maior que 70% ou tiver picos frequentes e sustentados acima de 95%, considere mudar para um tamanho de instância maior. Da mesma forma, se a utilização em estado estável for baixa, com picos abaixo de 50%, considere reduzir para uma instância menor e economizar.
Tamanho da RAM
A quantidade de memória do sistema é um fator importante para o desempenho do aplicativo. O AlloyDB Omni realiza o gerenciamento dinâmico de memória, que se adapta às necessidades de memória em constante mudança do banco de dados. O tamanho máximo do pool de buffers, sem o mecanismo colunar ativado, é de 80% da RAM disponível no tipo de máquina usado. À medida que o banco de dados é executado, o AlloyDB Omni ajusta o pool de buffers para acomodar consultas que precisam de mais memória, como as analíticas.
A utilização do pool de buffers é um fator fundamental no desempenho do sistema. Você pode analisar a taxa de acerto do pool de buffers para ter uma ideia de quantos dados o aplicativo está acessando do pool de buffers enquanto está em execução. Se a taxa de erros for alta, considere aumentar a quantidade de memória para disponibilizar mais RAM ao pool de buffer.
Um banco de dados pode ter uma grande quantidade de dados, mas um subconjunto menor, chamado de conjunto de trabalho, é usado pelo aplicativo. Use o tamanho de instância adequado para seu conjunto de trabalho. Para ter o melhor desempenho, use um conjunto de trabalho que caiba totalmente no pool de buffers.