CaptureChangePostgreSQL 2025.10.2.19

Bundle

com.snowflake.openflow.runtime | runtime-database-cdc-processors-nar

Description

Lit les événements CDC d’une base de données PostgreSQL. Le processeur lit en continu les événements qui arrivent dans le flux, en filtrant ceux liés aux tables fournies par le TableStateService, et en écartant les autres. Une fois le lot d’événements en cours traité, le processeur confirme la position du compartiment de réplication dans PostgreSQL, ce qui permet de réduire le WAL. Le processeur produit deux types de FlowFiles : les DDLs, contenant le schéma initial d’une table, puis chaque fois que son schéma change, et les DMLs avec des enregistrements représentant les modifications apportées aux données de la table. Un FlowFile représente toujours les données relatives à une table. La DDL avec le schéma est écrit dans le contenu du FlowFile en tant qu’objet JSON, sous une forme telle que : { « columns »: [ { « name »: « <columnName> », « type »: « <snowflakeType> », « nullable »: <true|false>, « scale »: <scale>, « precision »: <precision> }, … ], « primaryKeys »: [« <primaryKey1> », « <primaryKey2> », …] Les enregistrements DML sont structurés comme suit : { « primaryKeys »: { « <column> »: <value>, … }, « payload »: { « <column> »: <value>, … }, « metadata »: { « <column> »: <value>, … }

Balises

cdc, event, jdbc, postgresql, sql

Exigences en matière d’entrées

FORBIDDEN

Prend en charge les propriétés dynamiques sensibles

false

Propriétés

Propriété

Description

Column Filter Store

Service de stockage des paramètres de filtrage des colonnes par table.

JDBC Driver Location

Liste séparée par des virgules des fichiers, des dossiers et/ou des URL contenant le pilote JAR et ses dépendances (le cas échéant). Par exemple, « /var/tmp/postgresql-java-client-42.7.5.jar »

JDBC URL

URL JDBC de la connexion à la base de données, c’est-à-dire : jdbc:postgresql://localhost:5432/postgres

Max Batch Size

Nombre maximal d’enregistrements à traiter en une seule itération

Max Batch Wait Time

Temps d’attente maximum pour que les données apparaissent dans le flux CDC.

Mot de passe

Mot de passe pour accéder à la base de données PostgreSQL

Publication Name

Le nom de la publication CDC à lire.

Record Writer

Le Record Writer est utilisé pour sérialiser les événements DML

Nom de l’emplacement de réplication

Le nom de l’emplacement de réplication à utiliser. 63 caractères maximum. Si l’emplacement n’existe pas, le processeur le créera.

Service contextuel SSL

Service de contexte SSL prenant en charge la communication par socket chiffrée

Mode SSL

Détermine s’il convient d’utiliser et d’appliquer SSL lors de la connexion à PostgreSQL

Espace réservé de valeur TOASTed

La valeur à insérer dans une colonne TOASTed

Stratégie de valeur TOASTed

Détermine la manière de traiter les valeurs TOASTed.

Table State Store

Le magasin partagé contenant l’état des tables répliquées.

NomUtilisateur

Nom d’utilisateur pour accéder à la base de données PostgreSQL

Gestion de l’État

Champs d’application

Description

CLUSTER

Ce processeur stocke des informations telles qu’un « pointeur » vers l’événement CDC en cours dans la base de données, de sorte qu’il puisse reprendre au même emplacement en cas de redémarrage, ainsi que le nom de l’emplacement de réplication créé dans PostgreSQL.

Relations

Nom

Description

success

Création réussie du FlowFile à partir des événements du flux CDC

Écrit les attributs

Nom

Description

source.schema.name

Nom du schéma de la table d’où provient un événement

source.table.name

Nom de la table d’où provient un événement

cdc.event.type

Type d’événement porté par le FlowFile : ddl ou dml

cdc.most.significant.position

La position la plus importante du DDL dans le flux CDC

cdc.least.significant.position

La position la moins importante du DDL dans le flux CDC

cdc.event.seen.at

Horodatage du moment où l’événement DDL a été lu par le processeur