Que sont les colonnes TOAST dans PostgreSQL ?
Identifier les colonnes TOAST dans une table
Assurer la bonne gestion des colonnes TOAST
REPLICA IDENTITY de la table sur FULL. Cela indique à PostgreSQL d’inclure l’intégralité de l’ancienne ligne dans le WAL pour les opérations UPDATE et DELETE, ce qui garantit que toutes les valeurs de colonne (y compris celles des colonnes TOAST) sont disponibles pour la réplication.
Vous pouvez définir REPLICA IDENTITY sur FULL à l’aide de la commande SQL suivante :
REPLICA IDENTITY FULL.
Comportement de la réplication lorsque REPLICA IDENTITY FULL n’est pas défini
REPLICA IDENTITY FULL n’est pas défini pour une table comportant des colonnes TOAST, vous pouvez rencontrer les problèmes suivants lors de la réplication vers ClickHouse :
- Pour les opérations INSERT, toutes les colonnes (y compris les colonnes TOAST) seront correctement répliquées.
-
Pour les opérations UPDATE :
- Si une colonne TOAST n’est pas modifiée, sa valeur sera NULL ou vide dans ClickHouse.
- Si une colonne TOAST est modifiée, elle sera correctement répliquée.
- Pour les opérations DELETE, les valeurs des colonnes TOAST seront NULL ou vides dans ClickHouse.
REPLICA IDENTITY FULL pour les tables comportant des colonnes TOAST afin de garantir une réplication exacte et complète des données.
Conclusion
REPLICA IDENTITY approprié, vous pouvez garantir une réplication exacte et complète de vos données.