使用 Kafka Connect API JDBC Sink 连接器示例到 Oracle 数据库的 Kafka 主题
Posted
技术标签:
【中文标题】使用 Kafka Connect API JDBC Sink 连接器示例到 Oracle 数据库的 Kafka 主题【英文标题】:Kafka Topic to Oracle database using Kafka Connect API JDBC Sink Connector Example 【发布时间】:2019-06-04 15:52:36 【问题描述】:我知道要编写一个 Kafka 消费者并将每条记录插入/更新到 Oracle 数据库中,但我想为此目的利用 Kafka Connect API 和 JDBC Sink Connector。除了属性文件,在我的搜索中,我找不到完整的可执行示例,其中包含在 Java 中配置和编写相关代码以使用带有 json 消息的 Kafka 主题并使用 Kafka 在 Oracle 数据库中插入/更新(合并)表的详细步骤将 API 与 JDBC 接收器连接器连接。有人可以演示一个包括配置和依赖项的示例吗?这种方法有什么缺点吗?当表数据增加到数百万时,我们是否预计会出现任何潜在问题?
提前致谢。
【问题讨论】:
您不必编写代码。您可以只使用现有的并对其进行配置。您可以在此处找到 jdbc-sink 连接器的文档:docs.confluent.io/current/connect/kafka-connect-jdbc/… 【参考方案1】:您的特定用例不会有示例,因为 JDBC 连接器是通用的。
Here is one configuration example 使用 Oracle 数据库
你只需要
-
某种格式的主题
key.converter
和 value.converter
设置为反序列化该主题
您的 JDBC 字符串和数据库架构(表、投影字段等)
任何其他JDBC Sink Specific Options
所有这些都在 Java 属性/JSON 文件中,不是 Java 源代码
如果您在创建此配置时遇到特定问题,请发表评论。
当表格数据增加到数百万时,我们是否预计会出现任何潜在问题?
嗯,这些问题与数据库服务器有关,与 Kafka Connect 无关。例如,在接受连续写入时磁盘已满或负载增加。
这种方法有什么缺点吗?
如果您确实需要,您必须单独处理重复数据删除或记录过期(例如 GDPR)。
【讨论】:
以上是关于使用 Kafka Connect API JDBC Sink 连接器示例到 Oracle 数据库的 Kafka 主题的主要内容,如果未能解决你的问题,请参考以下文章
如何将 kafka-connect-jdbc-5.5.0.jar 添加到 Debezium/connect
pyflink消费kafka-connect-jdbc消息(带schema)
Postgres使用JDBC Kafka Connect进行流式传输
Kafka Connect JDBC Source MySQL 全量同步
kafka-connect JDBC PostgreSQL Sink Connector 显式定义 PostgrSQL 模式(命名空间)