对于ApacheSparkVersion2.1,我想使用Kafka (0.10.0.2.5)作为结构化流的源:
kafka_app.py:
from pyspark.sql import SparkSession
spark=SparkSession.builder.appName("TestKakfa").getOrCreate()
kafka=spark.readStream.format("kafka") \
.option("kafka.bootstrap.servers","localhost:6667") \
.option("subscribe","mytopic").load()我启动该应用程序的方式如下:
./bin/spark-submit kafka_app.py --master local[4] --jars spark-streaming-kafka-0-10-assembly_2.10-2.1.0.jar从mvnrepository.com/artifact/org.apache.spark/spark-streaming-kafka-0-10-assembly_2.10/2.1.0下载了.jar之后
我会犯这样的错误:
[...] java.lang.ClassNotFoundException:Failed to find data source: kakfa. [...]类似地,我无法运行与Kakfa:https://spark.apache.org/docs/2.1.0/structured-streaming-kafka-integration.html集成的星火示例。
因此,我想知道我错了什么地方,或者Kafka与Spark2.1使用pyspark的集成是否实际上得到了支持,因为这个页面只提到了0.10版中支持的Scala和Java语言,这让我怀疑:https://spark.apache.org/docs/latest/streaming-kafka-integration.html (但如果还不支持,为什么会发布一个Python中的示例?)
提前感谢您的帮助!
发布于 2017-03-21 00:37:40
您需要使用sql结构化流jar“0-10_2.11-2.1.0.jar”而不是spark-streaming-kafka-0-10-assembly_2.10-2.1.0.jar.。
https://stackoverflow.com/questions/42906068
复制相似问题