【问题标题】:JavaDStream print() function not printingJavaDStream print() 函数不打印
【发布时间】:2019-05-31 15:04:21
【问题描述】:

我是 Spark 流媒体的新手。 我按照此链接的教程进行操作:https://spark.apache.org/docs/latest/streaming-programming-guide.html

当我运行代码时,我可以看到正在处理该行,但我看不到带有时间戳的输出。

我只能看到这个日志:

14/10/22 15:24:17 INFO scheduler.ReceiverTracker: Stream 0 received 0 blocks
14/10/22 15:24:17 INFO scheduler.JobScheduler: Added jobs for time 1414005857000 ms
.....

我还尝试使用 forEachRDD 函数调用保存最后一个 DStream,但没有存储数据。 如果有人可以帮助我,那将是一个很大的帮助..

【问题讨论】:

    标签: apache-spark spark-streaming


    【解决方案1】:

    我遇到了同样的问题,我是这样解决的:

    改变

    val conf = new SparkConf().setMaster("local")
    

    val conf = new SparkConf().setMaster("local[*]")
    

    setMaster("local") 有误,实际不会计算。

    希望这是您遇到的问题。

    【讨论】:

      【解决方案2】:

      ..... 分隔符证明打印工作正常,只是没有可打印的内容:DStream 为空。提供的日志实际上显示:Stream 0 received 0 blocks

      确保您将数据正确发送到您的接收器。

      【讨论】:

      • 我正在获取数据,但在 20 秒后。你知道如何使用 Kafka 进行流式传输吗?现在我坚持使用卡夫卡。我正在获取数据,但它不会直到 RDD 的 print() 函数。
      • 很难说。我想你需要用你正在使用的代码发布一个新问题。
      【解决方案3】:
      val conf = new SparkConf().setMaster("local[*]") works
      

      local[*]: '*' 表示创建与CPU内核编号相同的工作线程
      如果使用“本地”,没有创建工人,为什么默认不是 1,这不是问题吗? 参考。 What does setMaster `local[*]` mean in spark?

      【讨论】:

      • 这是对问题的回答还是对另一个答案的评论?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多