这个项目能做什么

**siddhi-io-cdc 扩展**是 Siddhi 的扩展,用于从 MySQL、MS SQL、PostgreSQL、H2 和 Oracle 等数据库捕获变更数据。它提供 `cdc` 源,当数据库表触发变更事件(INSERT、UPDATE、DELETE)时,以键值格式接收事件。 **模式:** - **监听模式:** 源监听数据库的变更日志,并在发生变更时立即通知。支持 MySQL、PostgreSQL 和 SQL Server。对于 Oracle,需要使用 Oracle Instant Client 进行额外设置。 - **轮询模式:** 定期轮询数据源以获取变更;只能捕获 INSERT 和 UPDATE 变更。需要一个轮询列(自增列或时间戳列)。 **配置:** - 连接详情(url、username、password、driverClassName)可在 Siddhi 命名空间下的 `deployment.yaml` 中提供。 - 对于 PostgreSQL 监听模式,需配置 `slot.name`(默认值:debezium)、`plugin.name`(例如 decoderbufs、pgoutput、wal2json),并将 `table.name` 配置为 `<schema>.<table>`。 **依赖:** - 必须根据数据库类型将 JDBC 连接器 jar 添加到运行时(参见 Debezium 文档)。 - 监听模式需要进行特定于数据库的设置(例如 MySQL、PostgreSQL、SQL Server)。 **安装:** - 按照 Siddhi 文档了解如何在各种执行环境中添加扩展。 **测试:** - 可以使用 Maven profiles 在 Docker 容器中针对 H2、MySQL 5.7、PostgreSQL 9.6、MSSQL 和 Oracle 11.2.0.2-xe 运行集成测试。 **支持:** - 可在 StackOverflow 上使用 `siddhi` 标签提问;在 GitHub 上提出问题;在 Siddhi 网站上查看社区信息。