Configurare il motore colonnare in AlloyDB Omni

Seleziona una versione della documentazione:

In questa pagina viene descritto come attivare o disattivare il motore colonnare su un cluster di database AlloyDB Omni. Inoltre, spiega come configurare una dimensione iniziale appropriata per l'archivio di colonne.

Per una panoramica concettuale del motore colonnare AlloyDB, consulta la panoramica del motore colonnare AlloyDB Omni.

Abilita il motore colonnare

Per utilizzare il motore colonnare su un'istanza, imposta il flag google_columnar_engine.enabled dell'istanza su on.

Server singolo

Per impostare google_columnar_engine.enabled su on, segui questi passaggi:

  1. Esegui il comando PostgreSQL ALTER SYSTEM:

    ALTER SYSTEM SET google_columnar_engine.enabled = 'on'
    
  2. Se vuoi modificare la configurazione del motore colonnare, segui le istruzioni riportate nella sezione successiva prima di riavviare il server del database. In caso contrario, completa il passaggio seguente per riavviare il server del database ora.

  3. Per rendere effettiva la modifica dei parametri di configurazione, riavvia il server del database:

     sudo systemctl restart alloydbomni18

Configura le dimensioni del datastore di colonne

Quando il motore colonnare è abilitato su un'istanza, AlloyDB Omni alloca una parte della memoria dell'istanza per archiviare i dati colonnari. Se dedichi RAM ad alta velocità allo spazio di archiviazione a colonne, verifichi che AlloyDB Omni possa accedere ai dati colonnari il più rapidamente possibile.

La memoria e la cache di archiviazione insieme rappresentano la capacità complessiva del motore colonnare.

Configura la memoria

Puoi impostare l'allocazione su una dimensione fissa utilizzando il flag google_columnar_engine.memory_size_in_mb.

Server singolo

Per impostare il flag google_columnar_engine.memory_size_in_mb su un'istanza, segui questi passaggi:

  1. 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_SIZE con la nuova dimensione dello spazio di archiviazione delle colonne, in megabyte, ad esempio 256.

  2. Per rendere effettiva la modifica dei parametri di configurazione, riavvia il server del database:

    sudo systemctl restart alloydbomni18

Configura la cache di archiviazione

Server singolo

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.

Abilita la cache di archiviazione a colonne
  1. Esegui ALTER SYSTEM per 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.
  2. Riavvia il server di database:

    sudo systemctl restart alloydbomni18

Abilita join vettorizzato

Il motore colonnare dispone di una funzionalità di join vettorizzato che può migliorare le prestazioni dei join applicando l'elaborazione vettorizzata alle query idonee.

Dopo aver attivato il join vettorizzato, il planner delle query di AlloyDB ha la possibilità di applicare l'operatore di join vettorizzato anziché l'operatore di join hash PostgreSQL standard. Il planner prende questa decisione confrontando il costo di esecuzione della query utilizzando ciascun metodo.

Per abilitare il join vettorizzato 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 vettorizzato. Puoi aumentare il numero di thread disponibili per questa funzionalità impostando il flag google_columnar_engine.vectorized_join_threads su un valore più alto. Il valore massimo è cpu_count * 2.

Aggiorna manualmente il motore colonnare

Per impostazione predefinita, quando il motore colonnare è abilitato, aggiorna l'archivio di colonne in background.

Per aggiornare manualmente il motore di colonne, esegui questa 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.

Disabilita il motore colonnare

Per disattivare il motore colonnare su un'istanza, imposta il flag google_columnar_engine.enabled su off.

Server singolo

Per impostare google_columnar_engine.enabled su off, segui questi passaggi:

  1. Esegui il comando PostgreSQL ALTER SYSTEM:
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
  1. Per rendere effettiva la modifica dei parametri di configurazione, riavvia il server del database:

    sudo systemctl restart alloydbomni18

Passaggi successivi