CaptureChangePostgreSQL 2025.5.31.15

捆绑包

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

描述

从 PostgreSQL 数据库读取 CDC事件。处理器持续读取流中到达的事件,筛选与 TableStateService 提供的表相关的事件,并丢弃其余事件。当前批次事件处理完成后,处理器确认复制槽位置回到 PostgreSQL,让其修剪 WAL。处理器输出两种类型的 FlowFile:DDLs,包含表初始架构,然后每次架构发生变化时都会输出;DMLs,包含表中数据变化的记录。一个 FlowFile 始终代表与单个表相关的数据。将 DDL 架构作为 JSON 对象写入 FlowFile 内容,例如:{ "columns": [ { "name": "<columnName>", "type": "<snowflakeType>", "nullable": <true|false>, "scale": <scale>, "precision": <precision> }, ... ], "primaryKeys": ["<primaryKey1>", "<primaryKey2>", ...]}DML 记录的结构为:{ "<column>": <value>, ... }, "payload": { "<column>": <value>, ... }, "metadata": { "<column>": <value>, ... }}

标签

cdc、event、jdbc、postgresql、sql

输入要求

FORBIDDEN

支持敏感的动态属性

false

属性

属性

描述

列筛选存储

存储每个表列筛选设置的服务。

JDBC 驱动程序位置

以逗号分隔的文件/文件夹列表和/或 URLs,包含驱动程序 JAR 及其依赖项(如果有)。例如“/var/tmp/postgresql-java-client-42.7.5.jar”

JDBC URL

数据库连接的 JDBC URL,即 jdbc:postgresql://localhost:5432/postgres

最大批处理大小

单次迭代中要处理的最大记录数

最长批处理等待时间

等待数据出现在 CDC 流中的最长时间。

密码

访问 PostgreSQL 数据库的密码

发布名称

要读取的 CDC 发布名称。

记录写入器

用于序列化 DML 事件的记录写入器

SSL Context Service

支持加密套接字通信的 SSL Context Service

SSL 模式

连接 PostgreSQL 时是否使用和强制执行 SSL

表状态存储

保存复制表状态的共享存储。

用户名

访问 PostgreSQL 数据库的用户名

状态管理

范围

描述

CLUSTER

该处理器会存储数据库中当前 CDC 事件的“pointer”等信息,以便在重新启动时从同一位置继续运行,以及在 PostgreSQL 中创建的复制槽的名称。

关系

名称

描述

success

通过 CDC 流活动成功创建 FlowFile

写入属性

名称

描述

source.schema.name

事件来源表的架构名称

source.table.name

事件来源表的名称

cdc.event.type

FlowFile 携带的事件类型:ddl 或 dml

cdc.most.significant.position

Ddl 在 cdc 流中最重要的位置

cdc.least.significant.position

Ddl 在 cdc 流中最不重要的位置

cdc.event.seen.at

处理器读取 ddl 事件的时间戳

语言: 中文