Spark Streaming df.writeStream不生成任何输出

时间:2020-02-16 21:34:05

标签: scala apache-spark apache-kafka spark-structured-streaming

我正在使用hdp 沙盒2.6.4 ,并且在本地计算机(主机)上配置了spark。

我已经使用shell登录到docker映像,并开始了一个简单的控制台使用者。我正在尝试在我的本地计算机(不是docker容器)上使用Spark来使用它。它没有给出任何错误。但是,它也不提供任何输出。

 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 image并启动另一个控制台生产者,则可以使用所有消息。我已经检查了端口,并且从docker到主机都是打开的。

1 个答案:

答案 0 :(得分:0)

我怀疑VM的Docker容器中的kafka代理的advertised.listeners没有针对外部连接进行配置

相关问题