Depuis la version 9.0, les développeurs de PostgreSQL améliorent sans cesse la réplication interne. Cette version ne fait pas exception, et continue à proposer de nouvelles options sur la réplication physique. Elle ajoute aussi un type de réplication attendu depuis longtemps, la réplication logique.
Réplication logique
Concepts et vocabulaire
Jusqu’à la version 9.6, PostgreSQL ne propose que de la réplication physique, autrement dit une réplication basée sur l’envoi et l’application de blocs disques. Le serveur secondaire reçoit un bloc complet ou un delta de bloc à appliquer sur un fichier particulier. Du fait de sa conception, le serveur ne sait pas s’il s’agit de données d’une table, d’un index ou d’une vue matérialisée, pas plus que le nom de l’objet. Il ne sait pas non plus si cette modification est due à une opération DDL (CREATE/DROP/ALTER) ou à une opération DML (INSERT/UPDATE/DELETE/COPY). Il a seulement une suite d’octets à copier dans un certain fichier à un certain emplacement, cette suite d’octets étant le résultat de l’exécution des requêtes sur le serveur primaire.
Cette absence d’informations amène un ensemble de limitations dans ce type de réplication, la première étant qu’il est impossible...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première