Kafka 0.10与Spark 1.6.2兼容吗?

时间:2017-01-02 12:41:10

标签: scala apache-spark apache-kafka

如果我使用Spark 1.6.2,Scala 2.10和spark-streaming-kafka_2.10,我可以从Scala代码中使用来自Kafka 0.10.1.0的消息吗? (有一个使用Kafka 0.10.1.0的远程机器,代理间协议版本:0.10.1.0和Scala 2.11)。或者它是否意味着我应该使用Spark 2. *?

<dependency>
   <groupId>org.apache.spark</groupId>
   <artifactId>spark-streaming-kafka_2.10</artifactId>
   <version>1.6.2</version>
</dependency>

我在一些论坛上看过这篇文章,这让我很困惑:

Kafka 0.10 support is only coming with Spark 2.0 on Scala and Java workloads

例如,要消费消息,Scala不处理Kafka队列参数(代理列表,zookeeper ip等),但它只是将它们直接发送给Kafka,后者解释它们。这是对的吗?在这种情况下,为什么Kafka 0.10不支持Spark 1.6.2?

更新:

this thread我明白,我可以使用我在POM中指定的Kafka(见上文)来使用来自Kafka 0.10.1.0的消息,但不确定。 Kafka client是什么意思?这是指Kafka安装在远程服务器上(即Kafka 0.10.1.0)还是指我在POM中指定的Kafka?

1 个答案:

答案 0 :(得分:0)

0.10.1.0 picture 这取决于您安装的kafka版本。官方为每个版本提供两个二进制文件。如果您安装了scala 2.10,则应安装Scala 2.10 - kafka_2.10-0.10.1.0.tgz,否则安装Scala 2.11 - kafka_2.11-0.10。 1.0.tgz the official documents