Per una panoramica concettuale del motore colonnare AlloyDB, consulta la pagina Panoramica del motore colonnare AlloyDB Omni.
Abilitare il motore colonnare
Per utilizzare il motore colonnare su un'istanza, imposta il flag
google_columnar_engine.enabled
dell'istanza su on.
A un solo server
Per impostare google_columnar_engine.enabled su on, segui questi passaggi:
Esegui il comando PostgreSQL
ALTER SYSTEM:ALTER SYSTEM SET google_columnar_engine.enabled = 'on'Se vuoi modificare la configurazione del motore colonnare, segui le istruzioni riportate nella sezione successiva prima di riavviare il server di database. In caso contrario, completa il seguente passaggio per riavviare subito il server di database.
Affinché la modifica dei parametri di configurazione abbia effetto, riavvia il server di database:
sudo systemctl restart alloydbomni18
Configura le dimensioni dello column store
Mentre il motore colonnare è abilitato su un'istanza, AlloyDB Omni alloca una parte della memoria dell'istanza per archiviare i dati colonnari. L'allocazione di RAM ad alta velocità allo spazio di archiviazione a colonne verifica che AlloyDB Omni possa accedere ai dati a colonne il più rapidamente possibile.
La cache di memoria e di archiviazione insieme rappresentano la capacità complessiva del motore colonnare.
Configurare la memoria
Puoi impostare l'allocazione su una dimensione fissa utilizzando il flag
google_columnar_engine.memory_size_in_mb.
A un solo server
Per impostare il flag google_columnar_engine.memory_size_in_mb su un'istanza:
Configura la memoria eseguendo il comando PostgreSQL
ALTER SYSTEM:ALTER SYSTEM SET google_columnar_engine.memory_size_in_mb = COLUMN_MEMORY_SIZE;Sostituisci
COLUMN_MEMORY_SIZEcon le nuove dimensioni dello spazio di archiviazione della colonna, in megabyte, ad esempio256.Affinché la modifica dei parametri di configurazione abbia effetto, riavvia il server di database:
sudo systemctl restart alloydbomni18
Configura la cache di archiviazione
A un solo server
Dispositivi condivisi o dedicati
Puoi configurare la cache di archiviazione del motore colonnare su dispositivi dedicati o condivisi.
Esegui il provisioning e monta la directory della cache
Sui dispositivi dedicati, devi eseguire il provisioning dei dischi, creare un file system,
montare la directory della cache su un percorso host (ad esempio,
/var/lib/postgresql/18/data/columnar_cache) e assicurarti che disponga delle autorizzazioni di scrittura
per l'utente postgres.
Attivare la cache di archiviazione a colonne
Esegui
ALTER SYSTEMper configurare il percorso e le dimensioni della directory della cache:ALTER SYSTEM SET google_columnar_engine.omni_storage_cache_directory = 'CACHE_DIR_PATH'; ALTER SYSTEM SET google_columnar_engine.storage_cache_size = STORAGE_CACHE_SIZE;Sostituisci quanto segue:
CACHE_DIR_PATH: il percorso della directory della cache (ad esempio,/var/lib/postgresql/18/data/columnar_cache).STORAGE_CACHE_SIZE: le dimensioni della cache di archiviazione del motore colonnare, in megabyte.
Riavvia il server di database:
sudo systemctl restart alloydbomni18
Abilita l'unione vettorizzata
Il motore colonnare ha una funzionalità di join vettorializzato che può migliorare le prestazioni dei join applicando l'elaborazione vettoriale alle query idonee.
Dopo aver attivato il join vettoriale, il pianificatore di query AlloyDB ha la possibilità di applicare l'operatore di join vettoriale anziché l'operatore di hash join PostgreSQL standard. Il planner prende questa decisione confrontando il costo di esecuzione della query utilizzando ciascun metodo.
Per attivare il join vettoriale su un'istanza, imposta il flag
google_columnar_engine.enable_vectorized_join
dell'istanza su on.
Per impostare questo flag su un'istanza, esegui il comando PostgreSQL ALTER SYSTEM:
ALTER SYSTEM SET google_columnar_engine.enable_vectorized_join = 'on';
Per impostazione predefinita, AlloyDB Omni alloca un thread alla funzionalità di join vettoriale. Puoi aumentare il numero di thread disponibili per
questa funzionalità impostando il<0xx0D>
flag google_columnar_engine.vectorized_join_threads su un valore maggiore. Il valore massimo è cpu_count * 2.
Aggiornare manualmente il motore colonnare
Per impostazione predefinita, quando il motore colonnare è abilitato, aggiorna l'archivio colonne in background.
Per aggiornare manualmente il motore delle colonne, esegui la seguente query SQL:
SELECT google_columnar_engine_refresh(relation =>'TABLE_NAME');
Sostituisci TABLE_NAME con il nome della tabella o della vista materializzata che vuoi aggiornare manualmente.
Disattivare il motore colonnare
Per disattivare il motore colonnare su un'istanza, imposta il flag google_columnar_engine.enabled
su off.
A un solo server
Per impostare google_columnar_engine.enabled su off, segui questi passaggi:
- Esegui il comando PostgreSQL
ALTER SYSTEM:
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
Affinché la modifica dei parametri di configurazione abbia effetto, riavvia il server di database:
sudo systemctl restart alloydbomni18
Passaggi successivi
Consulta l'elenco completo dei flag del database del motore colonnare.
Prova il codelab Accelerazione delle query analitiche con il motore colonnare in AlloyDB Omni.