Я работаю с Apache Spark 2.4 и читаю данные json из kafka после применения многократного преобразования к потоковому запросу, окончательный вывод все еще двоичный.
val streamingDF = sparkSession.readStream
.format("kafka")
.option("subscribe", "test")
.option("startingOffsets", "latest")
.option("failOnDataLoss", value = false)
.option("maxOffsetsPerTrigger", 50000L)
.option("kafka.bootstrap.servers", "kafka_server")
.option("enable.auto.commit" , "false")
.load()
val dataSet = streamingDF.selectExpr("CAST(value AS STRING)").as[String]
val stream = dataSet.map{value => convertJSONToCaseClass(value)}
.map{data => futherconvertions(data)}.writeStream.format("console")
.outputMode(OutputMode.Update()).start()
После этого я получаю вывод, подобный этому, на консоль.
Batch: 8
-------------------------------------------
+--------------------+
| value|
+--------------------+
|[01 00 63 6F 6D 2...|
|[01 00 63 6F 6D 2...|
|[01 00 63 6F 6D 2...|
Ожидаемый вывод: кадр данных с несколькими столбцами
Есть ли что-то, что я делаю не так.
Любая помощь будет оценена.
Спасибо