Esta página descreve como ativar ou desativar o mecanismo de colunas em uma instância do AlloyDB para PostgreSQL. Também aborda como configurar um tamanho inicial adequado para o armazenamento de colunas, bem como as configurações de cache de memória e armazenamento para desempenho ideal.
Para usar o mecanismo de colunas no AlloyDB Omni, consulte Ativar o mecanismo de colunas no AlloyDB Omni.
Cada uma dessas ações envolve a alteração do valor de uma flag do banco de dados em uma das suas instâncias do AlloyDB. Para mais informações sobre como definir flags do banco de dados, consulte Configurar flags do 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 de colunas em uma instância, defina a flag
google_columnar_engine.enabled
da instância como on
.
Para mais informações sobre como definir flags do banco de dados no AlloyDB, consulte Configurar flags do banco de dados de uma instância.
Configurar o tamanho do armazenamento 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. A alocação de RAM de alta velocidade para o armazenamento de colunas garante que o AlloyDB possa acessar os dados de colunas o mais rápido possível.
A memória e o cache de armazenamento juntos representam a capacidade geral do mecanismo colunar.
Configurar a memória para o mecanismo colunar
Se o armazenamento de colunas for 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 de colunas 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 em até 50%. Para encontrar o tamanho de memória do mecanismo colunar recomendado para sua instância, consulte Recomendar tamanho de memória do armazenamento 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 do 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 de 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 vCPUs | 18,75 GB | 37,5 GB |
8 vCPUs | 18,75 GB | 37,5 GB |
16 vCPUs | 37,5 GB | 37,5 GB |
32 vCPUs | 75 GB | 75 GB |
64 vCPUs | 150 GB | 150 GB |
96 vCPUs | 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 de colunas, com as limitações dos valores mínimo e máximo listados na tabela a seguir:
Nível da instância | Tamanho mínimo do cache do mecanismo de colunas | 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 vCPUs | 0 | 187,5 GB | 375 GB |
8 vCPUs | 0 | 187,5 GB | 375 GB |
16 vCPUs | 0 | 375 GB | 375 GB |
32 vCPUs | 0 | 750 GB | 750 GB |
64 vCPUs | 0 | 1.500 GB | 1.500 GB |
96 vCPUs | 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 de colunas, execute uma das consultas SQL a seguir.
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 usado. |
SELECT google_columnar_engine_storage_cache_total(); |
Retorna a quantidade total do tamanho configurado do armazenamento em cache para o mecanismo colunar. |
Ativar a união vetorial
O mecanismo colunar tem um recurso de junção vetorial que pode melhorar o desempenho das junções aplicando o processamento vetorial a consultas qualificadas.
Depois de ativar a mesclagem vetorizada, o planejador de consulta do AlloyDB tem a opção de aplicar o operador de mesclagem vetorizada em vez do operador de hash de mesclagem padrão do PostgreSQL. O planejador toma essa decisão comparando o custo de execução da consulta usando um dos métodos.
Para ativar a união vetorial em uma instância, defina a flag
google_columnar_engine.enable_vectorized_join
da instância como on
.
O AlloyDB aloca uma linha de execução para o recurso de mesclagem vetorizado
por padrão. É possível aumentar o número de linhas de execução disponíveis para
esse recurso definindo a flag
google_columnar_engine.vectorized_join_threads
para um valor maior.
Atualizar manualmente o mecanismo colunar
Por padrão, o mecanismo de colunas é configurado para atualizar automaticamente o armazenamento de colunas em segundo plano quando ativado. Talvez seja necessário atualizar manualmente a loja de colunas em determinadas situações, por exemplo, se a atualização automática não atualizar uma relação com um grande número de blocos inválidos.
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 motor de coluna 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 no mecanismo colunar
Se as colunas não forem preenchidas no mecanismo de colunas, 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 que as tabelas ou visualizações materializadas na consulta estão no mecanismo de colunas.
Verifique o uso do mecanismo de colunas usando a instrução
EXPLAIN
.
A seguir
Consulte a lista completa de flags de banco de dados do mecanismo de colunas.
Saiba mais sobre a autocolunização.