После просмотра других ответов я все еще не могу понять это.
Я могу использовать kafkaProducer и kafkaConsumer для отправки и получения сообщений из моего блокнота.
producer = KafkaProducer(bootstrap_servers=['127.0.0.1:9092'],value_serializer=lambda m: json.dumps(m).encode('ascii'))
consumer = KafkaConsumer('hr',bootstrap_servers=['127.0.0.1:9092'],group_id='abc' )
Я пытался подключиться к потоку как с помощью контекста spark, так и сеанса spark.
from pyspark.streaming.kafka import KafkaUtils
sc = SparkContext("local[*]", "stream")
ssc = StreamingContext(sc, 1)
Что дает мне эту ошибку
Spark Streaming's Kafka libraries not found in class path. Try one
of the following.
1. Include the Kafka library and its dependencies with in the
spark-submit command as
$ bin/spark-submit --packages org.apache.spark:spark-streaming-
kafka-0-8:2.3.2 ...
Кажется, мне нужно было добавить JAR в мой
!/usr/local/bin/spark-submit --master local[*] /usr/local/Cellar/apache-spark/2.3.0/libexec/jars/spark-streaming-kafka-0-8-assembly_2.11-2.3.2.jar pyspark-shell
, который возвращает
Error: No main class set in JAR; please specify one with --class
Run with --help for usage help or --verbose for debug output
В каком классе я учусь?
Как мне заставить Pyspark подключиться к потребителю?