Nesta página, descrevemos como ativar ou desativar o mecanismo colunar em uma instância do AlloyDB para PostgreSQL. Ele também aborda como configurar um tamanho inicial adequado para o armazenamento de colunas, além de configurações de cache de memória e armazenamento para um desempenho ideal.
Para usar o mecanismo de colunas com o AlloyDB Omni, consulte Ativar o mecanismo de colunas no AlloyDB Omni.
Cada uma dessas ações envolve a mudança do valor de uma flag de banco de dados em uma das suas instâncias do AlloyDB. Para mais informações sobre como definir flags de banco de dados, consulte Configurar flags de banco de dados de uma instância.
Para uma visão geral conceitual do mecanismo de colunas do AlloyDB, consulte Sobre o mecanismo de colunas do AlloyDB.
Ativar o mecanismo colunar
Para usar o mecanismo colunar em uma instância, defina a flag
google_columnar_engine.enabled
da instância como on
.
Para mais informações sobre como definir flags de banco de dados no AlloyDB, consulte Configurar flags de banco de dados de uma instância.
Configurar o tamanho do repositório de colunas
Enquanto o mecanismo de colunas está ativado em uma instância, o AlloyDB aloca uma parte da memória da instância para armazenar os dados de colunas. Dedicando RAM de alta velocidade ao armazenamento de colunas, você garante que o AlloyDB possa acessar os dados colunares o mais rápido possível.
A memória e o cache de armazenamento representam juntos a capacidade geral do mecanismo colunar.
Configurar a memória para o mecanismo colunar
Se o armazenamento de colunas ficar maior do que a parte alocada da memória da instância, o AlloyDB vai usar automaticamente a camada de cache subjacente da instância para armazenar os dados colunares adicionais.Por padrão, o AlloyDB aloca 30% da memória da instância para o armazenamento de colunas e ajusta automaticamente a alocação total se você redimensionar a instância. É possível modificar a memória da instância até um máximo de 50%. Para encontrar o tamanho de memória recomendado do mecanismo colunar para sua instância, consulte Recomendar tamanho da memória do repositório de colunas.
Também é possível definir a alocação para um tamanho fixo e específico usando a flag
google_columnar_engine.memory_size_in_mb
.
Para que o AlloyDB volte à alocação padrão, remova a flag da instância.
Para mais informações sobre como definir ou excluir flags, consulte Configurar flags de banco de dados de uma instância.
Configurar o cache de armazenamento para o mecanismo colunar
O cache de armazenamento do mecanismo colunar é provisionado de acordo com o nível da instância.
Nível da instância | Tamanho padrão do cache do mecanismo colunar | |
---|---|---|
Instância principal | Ler instância da réplica | |
2 vCPU | 18,75 GB | 37,5 GB |
4 vCPU | 18,75 GB | 37,5 GB |
8 vCPU | 18,75 GB | 37,5 GB |
16 vCPUs | 37,5 GB | 37,5 GB |
32 vCPU | 75 GB | 75 GB |
64 vCPUs | 150 GB | 150 GB |
96 vCPU | 300 GB | 300 GB |
128 vCPUs | 450 GB | 450 GB |
A flag google_columnar_engine.storage_cache_size
permite ajustar o cache de armazenamento do mecanismo colunar, com as limitações dos valores mínimos e máximos listados na tabela a seguir:
Nível da instância | Tamanho mínimo do cache do mecanismo colunar | Tamanho máximo do cache do mecanismo colunar | |
---|---|---|---|
Instância principal | Ler instância da réplica | ||
2 vCPU | 0 | 187,5 GB | 375 GB |
4 vCPU | 0 | 187,5 GB | 375 GB |
8 vCPU | 0 | 187,5 GB | 375 GB |
16 vCPUs | 0 | 375 GB | 375 GB |
32 vCPU | 0 | 750 GB | 750 GB |
64 vCPUs | 0 | 1.500 GB | 1.500 GB |
96 vCPU | 0 | 3000 GB | 3000 GB |
128 vCPUs | 0 | 4.500 GB | 4.500 GB |
Monitorar dados de cache de armazenamento para o mecanismo colunar
Para conferir informações sobre o cache de armazenamento do mecanismo colunar, execute uma das seguintes consultas SQL.
Consulta SQL | Descrição |
---|---|
SELECT google_columnar_engine_storage_cache_used(); |
Retorna o tamanho do cache de armazenamento do mecanismo colunar usado. |
SELECT google_columnar_engine_storage_cache_available(); |
Retorna o tamanho do cache de armazenamento do mecanismo colunar não utilizado. |
Para verificar o tamanho total configurado do cache de armazenamento para o mecanismo colunar, execute o seguinte comando:
SHOW google_columnar_engine.storage_cache_size;
Ativar junção vetorizada
O mecanismo colunar tem um recurso de junção vetorizada que pode melhorar o desempenho das junções aplicando o processamento vetorizado a consultas qualificadas.
Depois de ativar a junção vetorizada, o planejador de consultas do AlloyDB poderá aplicar o operador de junção vetorizada em vez do operador de junção de hash padrão do PostgreSQL. O planejador toma essa decisão comparando o custo de execução da consulta usando qualquer um dos métodos.
Para ativar a junção vetorizada em uma instância, defina a flag
google_columnar_engine.enable_vectorized_join
da instância como on
.
Por padrão, o AlloyDB aloca uma linha de execução para o recurso de junção vetorizada. Para aumentar o número de linhas de execução disponíveis para esse recurso, defina a flag
google_columnar_engine.vectorized_join_threads
com um valor maior.
Atualizar manualmente o mecanismo colunar
Por padrão, o mecanismo colunar é configurado para atualizar automaticamente o repositório de colunas em segundo plano quando ativado. Em algumas situações, como quando a atualização automática não atualiza uma relação com um grande número de blocos inválidos, talvez seja necessário atualizar manualmente o armazenamento colunar.
Para atualizar manualmente o mecanismo de colunas, execute a seguinte consulta SQL:
SELECT google_columnar_engine_refresh('TABLE_NAME');
Substitua TABLE_NAME
pelo nome da tabela ou da visualização materializada que você quer atualizar manualmente.
Desativar o mecanismo colunar
Para desativar o mecanismo columbar em uma instância, defina a flag google_columnar_engine.enabled
como off
.
Depois de definir essa flag, a instância é reiniciada automaticamente.
Resolver problemas do mecanismo colunar
Se as colunas não forem preenchidas no mecanismo colunar, uma das seguintes situações pode ser verdadeira:
As colunas que você quer adicionar incluem um tipo de dados não compatível.
Os requisitos do mecanismo colunar não estão sendo atendidos.
Para encontrar a causa desse problema, tente o seguinte:
Analise os registros de auditoria da sua instância.
Confirme se as tabelas ou visualizações materializadas na sua consulta estão no mecanismo colunar.
Verifique o uso do mecanismo de colunas usando a instrução
EXPLAIN
.
A seguir
Confira a lista completa de flags do banco de dados do mecanismo colunar.
Saiba mais sobre a colunação automática.