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, consideramos que você esteja familiarizado com o PostgreSQL.
Dimensionamento de instâncias
Escolher o tamanho correto da máquina para o AlloyDB Omni é fundamental para ter o melhor desempenho do aplicativo. Reunindo os conceitos deste documento, as entradas para tomar uma decisão sobre o tamanho da máquina são sobre garantir 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 uma utilização de 70% ou menos. Ter recursos de CPU suficientes deixa espaço livre para que a instância processe picos de utilização e continue funcionando se a utilização do aplicativo crescer ao longo do tempo, além de garantir que você possa realizar operações de manutenção periódicas, como o vácuo. A execução com uma utilização de 100% ou próxima disso pode levar a um desempenho ruim devido à troca de contexto de processo ou de linha de execução ou aos efeitos de enfileiramento em outras partes do sistema, já que elas disputam recursos de CPU escassos.
Se a utilização de recursos de 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 de estado estável for baixa, com picos abaixo de 50%, considere reduzir o tamanho para uma instância menor para economizar custos.
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 do banco de dados. O tamanho máximo do pool de buffer, 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 buffer para acomodar consultas que precisam de memória adicional, por exemplo, consultas analíticas.
A utilização do pool de buffer é um fator fundamental no desempenho do sistema. Você pode analisar a taxa de acertos do pool de buffer para ter uma ideia de quantos dados o aplicativo está acessando no pool de buffer durante a execução. Se a taxa de erros for alta, considere aumentar a quantidade de memória para disponibilizar mais RAM para o 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 buffer.