【问题标题】:Read a CSV file in real time using Kafka Connect使用 Kafka Connect 实时读取 CSV 文件
【发布时间】:2019-02-21 06:47:41
【问题描述】:

如何将 Kafka Connect 与 Java 中的 Kafka 生产者集成,以便实时读取 CSV 文件?我很难找到与此相关的任何来源。

现在我正在使用 scala-ide 运行一个简单的 Kafka 生产者类,但不知道如何将它与 Kafka 连接一起使用。

【问题讨论】:

  • 似乎有几个关于快速谷歌搜索的例子。试试“kafka java示例”
  • 我知道,我已经尝试过了,但它只显示了没有 kafka 连接的 kafka java 生产者和消费者 api。此外,大多数 kafka 连接示例都是在 linux 机器上编写的,但没有一个是用 java 编写的。
  • Kafka Connect 是一个 Java 框架。它可以在任何操作系统上使用

标签: java apache-kafka kafka-producer-api apache-kafka-connect


【解决方案1】:

已存在用于读取 CSV 文件的 Kafka Connect 连接器:https://github.com/jcustenborder/kafka-connect-spooldir

Yuo 可以在这里看到它的一个例子:https://www.confluent.io/blog/ksql-in-action-enriching-csv-events-with-data-from-rdbms-into-AWS/


免责声明:我撰写了上述文章,并为 Confluent 工作,并在其博客上发布

【讨论】:

  • 谢谢罗宾,这个项目一定会派上用场
【解决方案2】:

Kafka Connect 已经内置了一个生产者。您只需要使用正确的连接器插件。为了读取 CSV 文件,作为 Kafka 一部分的 FileStreamSource 连接器应该可以工作。您可以在独立模式下启动 Kafka Connect(请参阅Kafka docs)并配置连接器。 Kafka 中的示例config files 应该可以帮助您入门。

【讨论】:

  • 谢谢你 Jakub,我会试一试
【解决方案3】:

另一个用于读取 CSV 文件的 Kafka Connect 插件:https://github.com/streamthoughts/kafka-connect-file-pulse

希望这个项目可以帮助人们寻找类似的解决方案。


免责声明:我是该项目的贡献者之一

【讨论】:

    【解决方案4】:

    临时 spooldir 连接器的问题是您需要将 csv 文件放在 kafka-connect 的 pod/ 容器中。对于大型文件,它可能不安全。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-27
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-28
      • 2017-10-15
      相关资源
      最近更新 更多