Блоки данных MQTT Streaming AbstractMethodError

Я пытаюсь сделать структурированный поток SQL от брокера MQTT:

test = spark.readStream.format("org.apache.bahir.sql.streaming.mqtt.MQTTStreamSourceProvider")\
.option("clientId", "experiment")\
.option("brokerUrl","tcp://<broker>:1883")\
.option("topic",'#')\
.option('QoS',0)\
.option('connectionTimeout',0)\
.option('keepAlive',5)\
.option('autoReconnect',True)\
.option('persistence','memory')\
.load()

Эти команды выглядят хорошо, но когда я пытаюсь записать поток, я получаю сообщение об ошибке:

PARQUET_PATH="/tmp"

test.writeStream.format("parquet")\
.option('checkpointLocation', PARQUET_PATH + "/_chk")\
.start(PARQUET_PATH)
java.lang.AbstractMethodError: org.apache.bahir.sql.streaming.mqtt.MQTTStreamSource.planInputPartitions()Ljava/util/List;

Кто-то получил такую ​​ошибку? Я уже все перепробовал и не прошел мимо этого.

Я использую Spark 2.4.0, Scala 2.11 и org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.4.0-SNAPSHOT

0 ответов

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