Spark流媒体示例对我不起作用:网络字数(可能是数据没有流式传输)

时间:2015-07-23 05:55:38

标签: apache-spark spark-streaming

  1. 开始大师和工作人员
  2. 启动控制台并输入
  3.   

    nc -lk 9999

    1. Ran网络字数统计示例
    2.   

      ./ bin / run-example streaming.NetworkWordCount localhost 9999

      1. 写在
      2.   

        " Hello world Hello"

        netcat console。

        1. 但是我运行程序的控制台,没有显示计算数据(可能是数据没有得到流),当我停止程序时,它计算了
        2.   

          您好,2   世界,1

3 个答案:

答案 0 :(得分:4)

我也遇到了同样的问题并且花了上周末才能让这个简单的流媒体示例工作。最后,我能够成功执行NetworkWorkCount程序。我正在使用spark 1.5.2。和Ubuntu_14系统。

有多种方法可以解决此问题,您可以使用其中任何一种方法:

  1. 您需要更新NetworkWorkCount.scala的代码(在/ examples / src / main / scala / org / apache / spark / examples / streaming /中),添加setMaster(“local [2]”)创建SparkConf变量如下。

    new SparkConf()。setMaster(“local [2]”)。setAppName(“NetworkWordCount”)

  2. 这种方法的问题是,你要以某种方式编译这个更新的代码,以使我们的修改生效,这可能是刚刚开始学习火花并试图运行这个简单例子的人的另一个问题。对他们来说,最简单的方法是选项。

    1. 最简单的解决方案是将MASTER变量设置为local [2],如下所示:

      一个。更改为SPARK_HOME的/ conf目录

      湾使用提供的模板创建spark-env.sh:

       cp spark-env.sh.template spark-env.sh
      

      打开spark-env.sh并在其中设置以下配置:

       MASTER=local[2]
      
    2. 现在打开第一个终端并启动netcat实用程序

        

      nc -lk 9999

    3. 打开第二个终端并执行NetworkWordCount程序

        

      ./ bin / run-example streaming.NetworkWordCount localhost 9999

    4. 它将开始显示连续流式传输,如下所示:

      -------------------------------------------
      Time: 1450077999000 ms
      -------------------------------------------
      (are,12)
      (am,6)
      (how,6)
      (rashmit,6)
      (apache,6)
      (hello,5)
      (spark,5)
      (you,12)
      (i,6)
      (sparkhello,1)
      ...
      
      -------------------------------------------
      Time: 1450078000000 ms
      -------------------------------------------
      (are,2)
      (am,1)
      (how,1)
      (rashmit,1)
      (apache,1)
      (hello,1)
      

答案 1 :(得分:0)

这应该有效

./bin/run-example --master local[4] streaming.NetworkWordCount localhost 9999

答案 2 :(得分:-1)

我们不需要任何代码更改或配置更改来运行此示例。尝试在虚拟机中运行此示例时遇到此问题。当我们作为主机的一部分运行时,不会发生此问题。感谢Rashmit Rathod提供有关此问题的线索。

  

解决方案是添加“--master local [2]”作为run-example命令行的一部分,如下所示

./bin/run-example --master local[2] org.apache.spark.examples.streaming.NetworkWordCount localhost 9999