CaptureChangePostgreSQL 2025.5.31.15

Bundle

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

Description

Lit les événements CDC à partir d’une base de données PostgreSQL. Ce processeur lit en continu les événements qui arrivent dans le flux, filtre ceux qui sont liés aux tables fournies par TableStateService et rejette les autres. Une fois le lot d’événements en cours traité, le processeur confirme la position de l’emplacement de réplication à PostgreSQL, ce qui lui permet de nettoyer le WAL. Le processeur génère en sortie deux types de FlowFiles : des DLL, contenant le schéma initial d’une table (le schéma initial, puis le nouveau schéma à chaque changement de schéma), et des DML contenant les enregistrements représentant les modifications apportées aux données de la table. Le fichier DDL contenant le schéma est écrit dans le contenu du FlowFile en tant qu’objet JSON prenant la forme suivante : { « columns »: [ { « name »: « <columnName> », « type »: « <snowflakeType> », « nullable »: <true|false>, « scale »: <scale>, « precision »: <precision> }, … ], « primaryKeys »: [« 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

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

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