【问题标题】:Spark Kafka Stream error火花卡夫卡流错误
【发布时间】:2018-08-15 21:52:02
【问题描述】:

我是新的 Spark 和 Kafka。我已经在 Windows 系统中完成了 Spark 和 Kafka 的设置。两者都工作得很好。我已经按照下面提到的教程并在 Spark-shell 中执行 Scala 代码并得到下面提到的错误。

谁能帮助我了解如何在 Scala 中使用 Spark 收听 Kafka 流。

火花:2.2 卡夫卡:2.12

http://www.godatafy.com/poc/streaming-with-spark-kafka/

spark-shell -jars ..\jars\spark-streaming-kafka_2.11-1.6.3.jar

scala> import org.apache.spark.SparkConf
import org.apache.spark.SparkConf

scala> import org.apache.spark.streaming.StreamingContext
import org.apache.spark.streaming.StreamingContext

scala> import org.apache.spark.streaming.Seconds
import org.apache.spark.streaming.Seconds

scala> import org.apache.spark.streaming.kafka.KafkaUtils
import org.apache.spark.streaming.kafka.KafkaUtils

scala> sc.stop

scala> val sparkConf = new SparkConf().setAppName("KafkaWordCount").setMaster("local[2]")
sparkConf: org.apache.spark.SparkConf = org.apache.spark.SparkConf@427c2c96

scala> val ssc = new StreamingContext(sparkConf, Seconds(2))
ssc: org.apache.spark.streaming.StreamingContext = org.apache.spark.streaming.StreamingContext@1fd73dcb

scala> val lines = KafkaUtils.createStream(ssc, "localhost:2181", "spark-streaming-consumer-group", Map("test" -> 5))
error: missing or invalid dependency detected while loading class file 'KafkaUtils.class'.
Could not access term kafka in package <root>,
because it (or its dependencies) are missing. Check your build definition for
missing or conflicting dependencies. (Re-run with `-Ylog-classpath` to see the problematic classpath.)
A full rebuild may help if 'KafkaUtils.class' was compiled against an incompatible version of <root>.

【问题讨论】:

  • 你确定 kafka 2.12 吗?
  • 是的。我正在使用 Kafka:2.12。

标签: scala apache-spark apache-kafka spark-streaming


【解决方案1】:

如果你使用的是Kafka 0.10或更高版本需要将jar添加到支持spark 2.2的版本

使用spark-streaming-kafka-0-10-2.10-2.2.0.jar

而不是spark-streaming-kafka_2.11-1.6.3.jar

希望这能解决你的问题!

【讨论】:

  • 使用 spark-streaming-kafka-assembly_2.11-1.6.3 后,我得到了原因:java.lang.ClassNotFoundException: org.apache.spark.Logging。为什么?。
  • 你为什么不用spark-streaming-kafka-0-10-2.10-2.2.0.jar
  • 你能给我 spark-streaming-kafka-0-10-2.10-2.2.0.jar 的 maven repo url。无法在 Maven 存储库中找到。请
  • 你可以在这里找到依赖mvnrepository.com/artifact/org.apache.spark/…
  • 我使用了 spark-streaming-kafka-0-10_2.11-2.2.0.jar,但是在 import ing import org.apache.spark.streaming.kafka.KafkaUtils package 得到错误 error: object kafka 不是包 org.apache.spark.streaming 的成员。如果可能的话,给我更好的教程,让我可以学习这个概念
猜你喜欢
  • 2019-04-11
  • 2016-08-03
  • 2018-09-15
  • 2018-08-13
  • 2018-02-24
  • 2023-03-19
  • 1970-01-01
  • 2016-12-19
  • 1970-01-01
相关资源
最近更新 更多