CaptureChangePostgreSQL 2025.10.2.19¶
Bundle¶
com.snowflake.openflow.runtime | runtime-database-cdc-processors-nar
Description¶
Reads CDC events from a PostgreSQL database. The processor continuously reads events arriving in the stream, filtering for those related to tables provided by the TableStateService, and discarding the rest. After the current batch of events is processed, the processor confirms the replication slot position back to PostgreSQL, letting it trim the WAL. The processor outputs two types of FlowFiles: DDLs, containing the initial schema of a table, and then every time its schema changes, and DMLs, with records representing changes to data in the table. One FlowFile always represents data related to a single table. The DDL with the schema is written to the FlowFile content as a JSON object, in a form such as: { « columns »: [ { « name »: « <columnName> », « type »: « <snowflakeType> », « nullable »: <true|false>, « scale »: <scale>, « precision »: <precision> }, … ], « primaryKeys »: [« <primaryKey1> », « <primaryKey2> », …] } The DML records are structured as: { « primaryKeys »: { « <column> »: <value>, … }, « payload »: { « <column> »: <value>, … }, « metadata »: { « <column> »: <value>, … }
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 |
Replication Slot Name |
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 of event carried by the FlowFile: ddl or 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 |