Documentation PostgreSQL 18.4 » Programmation serveur » Décodage logique (Logical Decoding)

Précédent Niveau supérieur Suivant
Chapitre 46. Processus en tâche de fond (background worker) Sommaire 47.1. Exemples de décodage logique

Chapitre 47. Décodage logique (Logical Decoding)

Table des matières

47.1. Exemples de décodage logique
47.2. Concepts de décodage logique
47.2.1. Décodage logique
47.2.2. Slots de réplication
47.2.3. Synchronisation du slot de réplication
47.2.4. Plugins de sortie
47.2.5. Instantanés exportés
47.3. Interface du protocole de réplication par flux
47.4. Interface SQL de décodage logique
47.5. Catalogues systèmes liés au décodage logique
47.6. Plugins de sortie de décodage logique
47.6.1. Fonction d'initialisation
47.6.2. Capacités
47.6.3. Modes de sortie
47.6.4. Callbacks de plugin de sortie
47.6.5. Fonction pour produire une sortie
47.7. Écrivains de sortie de décodage logique
47.8. Support de la réplication synchrone pour le décodage logique
47.8.1. Aperçu
47.8.2. Mises en garde
47.9. Envoi en flux de grosses transactions pour le décodage logique
47.10. Support du Two-phase commit pour le décodage logique

PostgreSQL fournit une infrastructure pour envoyer par flux les modifications effectuées en SQL à des consommateurs externes. Cette fonctionnalité peut être utilisée dans plusieurs buts, y compris pour des solutions de réplication ou d'audit.

Les changements sont envoyés dans des flux identifiés par des slots de réplication logique.

Le format dans lequel ces changements sont envoyés est déterminé par le plugin de sortie utilisé. Un plugin d'exemple est fourni dans la distribution de PostgreSQL. Des plugins additionnels peuvent être écrits pour étendre le choix des formats de sortie disponibles sans modifier une seule ligne de code du moteur. Chaque plugin de sortie a accès à chaque nouvelle ligne individuelle produite par les commandes INSERT, ainsi que les nouvelles versions de lignes créées par les commandes UPDATE. La disponibilité des anciennes versions des lignes dépend de l'identité de réplica configurée (voir REPLICA IDENTITY).

Les changements peuvent être consommés soit en utilisant le protocole de réplication par flux (streaming, voir Section 54.4 et Section 47.3), soit en appelant des fonctions en SQL (voir Section 47.4). Il est également possible d'écrire de nouvelles méthodes de consommation de sortie d'un slot de réplication sans modifier le code du moteur (voir Section 47.7).

AltStyle によって変換されたページ (->オリジナル) /