CaptureChangePostgreSQL 2025.10.2.19¶
Bundle¶
com.snowflake.openflow.runtime | runtime-database-cdc-processors-nar
Beschreibung¶
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>, … }
Eingabeanforderung¶
FORBIDDEN
Unterstützt sensible dynamische Eigenschaften¶
false
Eigenschaften¶
Eigenschaft |
Beschreibung |
|---|---|
Column Filter Store |
Dienst, der die Filtereinstellungen für die einzelnen Tabellenspalten speichert. |
JDBC Driver Location |
Durch Kommas getrennte Liste von Dateien/Ordnern und/oder URLs, die den JAR-Treiber und seine Abhängigkeiten (falls vorhanden) enthalten. Zum Beispiel „/var/tmp/postgresql-java-client-42.7.5.jar“ |
JDBC URL |
JDBC-URL der Datenbankverbindung, also jdbc:postgresql://localhost:5432/postgres |
Max Batch Size |
Die maximale Anzahl von Datensätzen, die in einer einzigen Iteration verarbeitet werden |
Max Batch Wait Time |
Die maximale Wartezeit für das Erscheinen von Daten im CDC-Stream. |
Password |
Kennwort für den Zugriff auf die PostgreSQL-Datenbank |
Publication Name |
Der Name der CDC-Veröffentlichung, aus der gelesen werden soll. |
Record Writer |
Der Record Writer wird für die Serialisierung von DML-Ereignissen verwendet. |
Replication Slot Name |
Der Name des zu verwendenden Replikations-Slots. Maximal 63 Zeichen. Wenn der Slot nicht existiert, erstellt ihn der Prozessor. |
SSL Context Service |
SSL Context Service zur Unterstützung verschlüsselter Socket-Kommunikation |
SSL Mode |
Ob SSL bei der Verbindung zu PostgreSQL verwendet und erzwungen werden soll |
TOASTed Value Placeholder |
Der Wert, der in eine TOASTed-Spalte eingefügt werden soll |
TOASTed Value Strategy |
Legt fest, wie TOASTed-Werte behandelt werden sollen |
Table State Store |
Der gemeinsam genutzte Speicher, in dem der Status replizierter Tabellen gespeichert ist. |
Username |
Benutzername für den Zugriff auf die PostgreSQL-Datenbank |
Statusmanagement¶
Bereiche |
Beschreibung |
|---|---|
CLUSTER |
Informationen wie ein „Zeiger“ auf das aktuelle CDC-Ereignis in der Datenbank werden von diesem Prozessor gespeichert, sodass er bei einem Neustart an der gleichen Stelle fortfahren kann, sowie der Name des in PostgreSQL erstellten Replikationsslots. |
Beziehungen¶
Name |
Beschreibung |
|---|---|
success |
Erfolgreich erstelltes FlowFile aus CDC-Stream-Ereignissen |
Schreibt Attribute¶
Name |
Beschreibung |
|---|---|
source.schema.name |
Name des Schemas der Tabelle, aus der ein Ereignis stammt |
source.table.name |
Name der Tabelle, aus der ein Ereignis stammt |
cdc.event.type |
Type of event carried by the FlowFile: ddl or dml |
cdc.most.significant.position |
Die höchstwertige Position von DDL im CDC-Stream |
cdc.least.significant.position |
Die niedrigstwertige Position von DDL im CDC-Stream |
cdc.event.seen.at |
Zeitstempel des Zeitpunkts, an dem das DDL-Ereignis vom Prozessor gelesen wurde |