CaptureChangePostgreSQL 2025.10.2.19

Bundle

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

Beschreibung

Liest CDC-Ereignisse aus einer PostgreSQL-Datenbank. Der Prozessor liest kontinuierlich Ereignisse, die im Stream eintreffen, und filtert nach Ereignissen, die sich auf Tabellen beziehen, die vom TableStateService bereitgestellt werden, und der Rest wird verworfen. Nachdem der aktuelle Batch von Ereignissen verarbeitet wurde, bestätigt der Prozessor die Position des Replikations-Slots zurück an PostgreSQL, sodass der WAL-Wert abgeschnitten wird. Der Prozessor gibt zwei Arten von FlowFiles aus: DDLs, die das anfängliche Schema einer Tabelle enthalten, und jedes Mal, wenn sich das Schema ändert, und DMLs mit Datensätzen, die Änderungen an Daten in der Tabelle darstellen. Ein FlowFile steht immer für Daten, die sich auf eine einzelne Tabelle beziehen. Die DDL mit dem Schema wird in den FlowFile-Inhalt als JSON-Objekt geschrieben: { „columns“: [ { „name“: „<columnName>“, „type“: „<snowflakeType>“, „nullable“: <true|false>, „scale“: <scale>, „precision“: <precision> }, … ], „primaryKeys“: [„<primaryKey1>“, „<primaryKey2>“, …] } Die DML-Datensätze sind wie folgt strukturiert: { „primaryKeys“: { „<column>“: <value>, … }, „payload“: { „<column>“: <value>, … }, „metadata“: { „<column>“: <value>, … }

Tags

cdc, event, jdbc, postgresql, sql

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

Typ des Ereignisses, das vom FlowFile übertragen wird: ddl oder 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