pyspark поддерживает lib-streaming-kafka-0-10 lib?

Моя версия кластера kafka - 0.10.0.0, и я хочу использовать поток pyspark для чтения данных kafka. но в Руководстве по интеграции Spark Streaming + Kafka, http://spark.apache.org/docs/latest/streaming-kafka-0-10-integration.html нет примера кода на python. Так может ли pyspark использовать spark-streaming-kafka-0-10 для интеграции kafka?

Заранее спасибо за вашу помощь!

1 ответ

Я также использую потоковую передачу с кластером Kafka 0.10.0. После добавления следующей строки в ваш код, вы готовы к работе.

spark.jars.packages org.apache.spark:spark-streaming-kafka-0-8_2.11:2.0.0

А вот пример в Python:

# Initialize SparkContext
sc = SparkContext(appName="sampleKafka")

# Initialize spark stream context
batchInterval = 10
ssc = StreamingContext(sc, batchInterval)

# Set kafka topic
topic = {"myTopic": 1}

# Set application groupId
groupId = "myTopic"

# Set zookeeper parameter
zkQuorum = "zookeeperhostname:2181"

# Create Kafka stream 
kafkaStream = KafkaUtils.createStream(ssc, zkQuorum, groupId, topic)

#Do as you wish with your stream
# Start stream
ssc.start()
ssc.awaitTermination()

Вы можете использовать spark-streaming-kafka-0-8, когда ваши брокеры 0,10 и новее. spark-streaming-kafka-0-8 поддерживает более новые версии брокеров, в то время как streaming-kafka-0-10 не поддерживает более старые версии брокеров. streaming-kafka-0-10 на данный момент все еще экспериментальный и не поддерживает Python.

Другие вопросы по тегам