Panoramica
Datastream utilizza il log delle transazioni PostgreSQL WAL (Write Ahead Log) per leggere i flussi PostgreSQL. Il log è archiviato in file WAL sul server del database. Ogni record nel log WAL rappresenta una singola modifica ai dati effettivi in una delle tabelle del database.
Imposta i parametri di configurazione per i file WAL di PostgreSQL
Ti consigliamo di applicare le seguenti impostazioni di configurazione al tuo database PostgreSQL:
max_slot_wal_keep_size
: imposta questo parametro (disponibile solo per PostgreSQL 13 e versioni successive) per limitare la quantità di spazio di archiviazione utilizzata dallo slot di replica. Questo è particolarmente importante per le transazioni a lunga esecuzione che, in casi estremi, possono portare le dimensioni del file WAL a occupare l'intero spazio di archiviazione e provocare l'arresto anomalo del database.statement_timeout
: imposta questo parametro su un valore selezionato per ridurre la latenza causata da transazioni di lunga durata. Puoi anche utilizzarestatement_timeout
come misura precauzionale alternativa per i database che non supportanomax_slot_wal_keep_size
.wal_sender_timeout
: imposta questo parametro su0
(per disattivare il timeout) o su un valore maggiore o uguale a 10 minuti.
Se prevedi di creare più di 10 flussi o se il numero di slot di replica logica utilizzati da altre risorse, oltre a quello pianificato, è superiore a 10, assicurati di modificare i seguenti parametri:
max_replication_slots
: aumenta il valore di questo parametro in base al numero di slot di replica impostato per il database (è necessario uno slot di replica per flusso). Puoi impostaremax_replication_slots
solo all'avvio del server.max_wal_senders
: aumenta il valore di questo parametro in modo che sia maggiore del valore del parametromax_replication_slots
. Puoi impostaremax_wal_senders
solo quando avvii il server.
Passaggi successivi
- Scopri di più su PostgreSQL come origine.
- Scopri di più sulla configurazione di un database PostgreSQL di origine.