【问题标题】:Kafka connect JDBC sink - Mapping nested json to mulitple rowsKafka 连接 JDBC 接收器 - 将嵌套的 json 映射到多行
【发布时间】:2019-04-27 02:36:35
【问题描述】:

作为要求的一部分,我们将继续使用 Kafka 连接将数据推送到我们的数据库。到目前为止我读到的是消息和数据库行之间会有一个 1x1 映射,即对于 Kafka 上的单个消息,数据库中会有一个相应的条目。 我想知道是否有可能将嵌套的 json 分解为多行以插入到 db 中?

我能想到的两种可能性是:- 1) 为 jdbc sink 编写自定义连接器 2)使用消费者组而不是kafka connect

【问题讨论】:

    标签: jdbc apache-kafka apache-kafka-connect confluent-platform


    【解决方案1】:

    使用消费者组而不是 kafka 连接

    Connect 一个消费者组。强烈建议不要编写自己的逻辑来处理连接失败、偏移管理、退休等,让 Connect 为您完成这些工作。如果这些“好处”对您不起作用,即使那样,我认为最好分叉连接器代码(您的选项 2)而不是编写一个普通的消费者

    连接单个消息转换大致是您正在寻找的。否则,您将编写一个消费者/生产者/Kstreams 应用程序来读取和写回“扁平化”主题,然后 Connect 将该输出主题读取到数据库中。

    注意:JDBC 不是您唯一的选择。 Mongodb 或 Couchbase 处理嵌套的 JSON 就好了

    【讨论】:

    • 谢谢。我们现在不能用 NoSQL db 替换 RDBMS。目前看来,分叉 JDBCSink 连接器是一个可行的选择。
    • 由你决定。我个人会使用 Kafka Streams 并使用 flatMap 运算符
    • 还将研究 Kafka 流并再次审查用例。感谢您的建议。
    猜你喜欢
    • 2019-11-13
    • 2019-06-17
    • 2020-01-11
    • 2021-12-19
    • 2018-03-01
    • 1970-01-01
    • 2019-11-15
    • 2020-12-09
    • 2020-01-12
    相关资源
    最近更新 更多