Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Présentation de la réplication logique PostgreSQL avec Aurora
En utilisant la fonction de réplication logique de PostgreSQL avec votre cluster de bases de données Aurora PostgreSQL, vous pouvez répliquer et synchroniser des tables individuelles plutôt que l’ensemble de l’instance de base de données. La réplication logique s’appuie sur un modèle publier et s’abonner pour répliquer les modifications depuis la source vers un ou plusieurs destinataires. Elle s’appuie sur les enregistrements de modification depuis le journal d’écriture anticipée (WAL) de PostgreSQL. La source, ou l’éditeur, envoie les données WAL pour les tables spécifiées à un ou plusieurs destinataires (abonné), répliquant ainsi les modifications et maintenant la table d’un abonné synchronisée avec la table de l’éditeur. L’ensemble des modifications apportées par l’éditeur est identifié à l’aide d’une publication. Les abonnés obtiennent les modifications en créant un abonnement qui définit la connexion à la base de données de l’éditeur et à ses publications. Un emplacement de réplication est le mécanisme utilisé dans ce schéma pour suivre la progression d’un abonnement.
Pour les clusters de bases de données Aurora PostgreSQL, les enregistrements WAL sont enregistrés sur le stockage Aurora. Le cluster de bases de données Aurora PostgreSQL qui joue le rôle d’éditeur dans un scénario de réplication logique lit les données WAL du stockage Aurora, les décode et les envoie à l’abonné afin que les modifications puissent être appliquées à la table de cette instance. L’éditeur utilise un décodeur logique pour décoder les données destinées aux abonnés. Par défaut, les clusters de bases de données Aurora PostgreSQL utilisent le plug-in pgoutput PostgreSQL natif lors de l’envoi de données. D’autres décodeurs logiques sont disponibles. Par exemple, Aurora PostgreSQL prend également en charge le plug-in wal2json qui convertit les données WAL en JSON.
Depuis Aurora PostgreSQL version 14.5, 13.8, 12.12, et 11.17, Aurora PostgreSQL augmente le processus de réplication logique de PostgreSQL avec un cache à écriture simultanée pour améliorer les performances. Les journaux de transactions WAL sont mis en cache localement, dans une mémoire tampon, afin de réduire la quantité d’entrées/sorties sur disque, c’est-à-dire la lecture du stockage Aurora pendant le décodage logique. Le cache à écriture simultanée est utilisé par défaut lorsque vous utilisez la réplication logique pour votre cluster de bases de données Aurora PostgreSQL. Aurora fournit plusieurs fonctions que vous pouvez utiliser pour gérer le cache. Pour plus d’informations, consultez Surveillance du cache à écriture simultanée de la réplication logique Aurora PostgreSQL.
La réplication logique est prise en charge par toutes les versions actuellement disponibles d’Aurora PostgreSQL. Pour plus d’informations, consultez Mises à jour d’Amazon Aurora PostgreSQL dans Notes de mise à jour d’Aurora PostgreSQL.
La réplication logique est prise en charge par Babelfish pour Aurora PostgreSQL à partir des versions suivantes :
-
15.7 et versions ultérieures
-
16.3 et versions ultérieures
Note
Outre la fonctionnalité de réplication logique native de PostgreSQL introduite dans PostgreSQL 10, Aurora PostgreSQL prend également en charge l’extension pglogical. Pour plus d’informations, consultez Utilisation de pglogical pour synchroniser les données entre les instances.
Pour plus d’informations sur la réplication logique PostgreSQL, consultez Réplication logique
Note
PostgreSQL 16 a ajouté la prise en charge du décodage logique à partir de répliques de lecture. Cette fonctionnalité n'est pas prise en charge sur Aurora PostgreSQL.