- Для первого сценария я хочу использовать Spark Structured Streaming с Iot Hub на входе и Cosmos DB на выходе. Я использовал следующие разъемы:
- лазурь-eventhubs-spark_2.11-2.3.2
- azure-cosmosdb-spark_2.3.0_2.11-1.2.0 (не напрямую с Maven, импорт uber jar
Дело в том, что когда я пытался импортировать мои данные в Cosmos DB, я получал следующую ошибку:
"java.lang.assertionError: Ошибка подтверждения: полученный порядковый номер 1790 не соответствует порядковому номеру запроса 1791"
- С Kafka: я попробовал другое решение, используя Iot Hub и Kafka, для использования Kafka в качестве источника в Spark Structured Streaming (вместо коннектора Event Hub). Но после всех настроек, связанных с Кафкой, у меня появляется следующая ошибка:
«Не удалось найти класс, который реализует Connector и имя которого соответствует com.microsoft.azure.iot.kafka.connect.source.IotHubSourceConnector».
Проблема с псевдонимом.
Как вы думаете, это связано с тем, что мы используем Iot Hub вместо Event Hub?
=> Я попробую третье решение, которое использует Stream Analytics, чтобы протолкнуть в БД Cosmos, затем реализовать ленту изменений БД Cosmos, чтобы использовать ее в качестве структурированной потоковой передачи Spark в качестве входа. Надеюсь, это сработает.
Любые советы по 2 приведенным выше сценариям приветствуются!