如何将非Confluent连接器与Apache Kafka Connect集成



有一个要求,即我们从Kafka Stream获取数据流,我们的目标是将这些数据推送到SOLR。

我们做了一些阅读,但我们可以找到市场上有很多Kafka Connect解决方案,但问题是我们不知道哪个是最好的解决方案以及如何实现。

选项包括:

  1. 使用 Solr 连接器与 Kafka 连接。
  2. 使用Apache Storm,因为它直接支持与Solr集成。

没有为上述选项提供太多文档或深入信息。

有人会好心让我知道吗

我们如何在不使用Confluent的情况下使用Solr连接器并与Kafka流集成?
Solr-Kafka 连接器:https://github.com/MSurendra/kafka-connect-solr

另外,关于阿帕奇风暴, Apache Storm是否有可能接受Kafka Stream并将其推送到Solr,尽管在将其推送到Solr之前,我们需要对数据进行一些清理?

我在这里避免了 Storm,因为问题主要是关于 Kafka Connect

警告- 问题中的这个Solr连接器使用的是Kakfa 0.9.0.1依赖项,因此,它不太可能与最新的Kafka API一起使用。

这个连接器未经我测试。跟随风险自负

以下是 Confluent 关于使用社区连接器的文档的摘录,并进行了一些重点和调整。换句话说,为 Kafka Connect 编写的 Confluent Platform 中不包含。


1( 克隆连接器的 GitHub 存储库

$ git clone https://github.com/MSurendra/kafka-connect-solr

2(用maven建造罐

子切换到新克隆的存储库,并签出所需的版本。(这个Solr连接器没有像Confluent那样的版本(。 您通常需要签出已发布的版本。

$ cd kafka-connect-solr; mvn package

从这里,请参阅安装插件

3( 找到连接器的 uber JAR 或插件目录

我们将target目录中生成的 Maven 输出复制到 Kafka Connect worker 的插件路径(plugin.path属性(上的一个目录中.
例如,如果插件路径包含/usr/local/share/kafka/plugins目录,我们可以使用以下技术之一使连接器可用作插件。

正如 Confluent 文档中提到的,export CLASSPATH=<some path>/kafka-connect-solr-1.0.jar选项将起作用,尽管plugin.path将是前进的方向(Kafka 1.0+(。

您应该根据mvn package的结果知道要使用哪个选项

选项 1(单个超级 JAR 文件

使用此Solr连接器,我们得到了一个名为kafka-connect-solr-1.0.jar

我们将该文件复制到/usr/local/share/kafka/plugins目录中:

$ cp target/kafka-connect-solr-1.0.jar /usr/local/share/kafka/plugins/

选项 2(依赖项目录

(这不适用于 Solr 连接器(

如果连接器的 JAR 被收集到构建目标目录的子目录中,我们可以将所有这些 JAR 复制到/usr/local/share/kafka/plugins中的插件目录中,例如

$ mkdir -p /usr/local/share/kafka/plugins/kafka-connect-solr
$ cp target/kafka-connect-solr-1.0.0/share/java/kafka-connect-solr/* /usr/local/share/kafka/plugins/kafka-connect-solr/
<小时 />

注意

请务必在运行 Kafka Connect 分布式工作进程的所有计算机上安装该插件。重要的是,您使用的每个连接器在所有工作线程上都可用,因为 Kafka Connect 会将连接器任务分发给任何工作线程


4( 运行 Kafka Connect

如果已正确设置plugin.path或执行export CLASSPATH,则可以将connect-standaloneconnect-distributed与该 Connect 项目的相应配置文件一起使用。

<小时 />

关于,

在将数据推送到 Solr 之前,我们需要对数据进行一些清理

在Kafka Connect 之前,您需要使用单独的进程(如 Kafka Streams、Storm 或其他进程(来执行此操作。将转换后的输出写入次要主题。或者编写自己的 Kafka Connect 转换过程。Kafka Connect 具有非常有限的开箱即用转换。

还值得一提的是 - JSON似乎是此Solr连接器唯一支持的Kafka消息格式

相关内容

  • 没有找到相关文章

最新更新