Spark предоставляет соединитель для Kafka, через который вы можете подключиться к любой теме kafka, доступной в вашем кластере.Как только вы подключитесь к своей теме Kafka, вы можете читать или записывать данные.
Пример кода:
stream
val kafkaStream = spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", KAFKA_BROKERS)
.option("subscribe", src_topic_name)
.option("startingOffsets", "latest")
.option("failOnDataLoss", "false")
.load()
batch
val kafkaStream = spark
.read
.format("kafka")
.option("kafka.bootstrap.servers", KAFKA_BROKERS)
.option("subscribe", src_topic_name)
.option("startingOffsets", "latest")
.option("failOnDataLoss", "false")
.load()
Теперь с помощью kafkaStream вы можете читать данные из src_topic_name(мы используем readStream здесь)
Ссылка: Потоковая передача Spark с Kafka
Этот блог может быть полезен для вас