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>, … }}
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 |