Spark Streaming df.writeStream не генерирует вывод - PullRequest
0 голосов
/ 17 февраля 2020

Я использую hdp песочницу 2.6.4 , и на локальном компьютере (хост-компьютере) настроена искра.

Я вошел в образ docker с помощью оболочки и запустил простой потребитель консоли. И я пытаюсь использовать это со Spark на моей локальной машине (не docker контейнер). это не дает никакой ошибки. однако, это также не дает никакого вывода.

 def main(args: Array[String]): Unit = {
    val spark = SparkSession.builder.appName("demo")
      .master("local[*]")
      .getOrCreate()
    spark.sparkContext.setLogLevel("WARN")
    import spark.implicits._
    val df = spark.readStream.
                      format("kafka").
                      option("kafka.bootstrap.servers", "localhost:6667").
                      option("subscribe", "test").
                      load()

    val query = df.writeStream
      .outputMode("append")
      .format("console")
      .start()

    query.awaitTermination()

  }

Если я войду в образ docker и начну работать с другим производителем консоли, я смогу принять все сообщения. Я проверил порт, и он открыт с docker для хоста.

1 Ответ

0 голосов
/ 17 февраля 2020

Я подозреваю, что объявленные списки посредников kafka в контейнере Docker в виртуальной машине не настроены для внешних подключений

...