【问题标题】:Spark-Scala writing the output in a textfileSpark-Scala 将输出写入文本文件
【发布时间】:2017-10-10 20:12:12
【问题描述】:

我正在 spark 中执行 wordcount 程序并尝试将结果存储在文本文件中。

我有一个 scala 脚本来将单词计为 SparkWordCount.scala。我正在尝试从 Spark 控制台执行脚本,如下所示。

scala> :load /opt/spark-2.0.2-bin-hadoop2.7/bin/SparkWordCount.scala
Loading /opt/spark-2.0.2-bin-hadoop2.7/bin/SparkWordCount.scala...
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark._
defined object SparkWordCount

scala>

程序执行后,我收到消息为“已定义对象 SparkWordCount”,但我无法在文本文件中看到输出结果。

我的字数统计程序如下。

import org.apache.spark.SparkContext 
import org.apache.spark.SparkContext._ 
import org.apache.spark._  

object SparkWordCount { 
   def main(args: Array[String]) { 

      val sc = new SparkContext( "local", "Word Count", "/opt/spark-2.0.2-bin-hadoop2.7",/opt/spark-2.0.2-bin-hadoop2.7/jars,map())



      val input = sc.textFile("demo.txt") 


      val count = input.flatMap(line ⇒ line.split(" ")).map(word ⇒ (word, 1)).reduceByKey(_ + _) 
      count.saveAsTextFile("outfile") 

   } 
}

请任何人提出建议。谢谢。

【问题讨论】:

    标签: scala apache-spark


    【解决方案1】:

    一旦定义了对象,您就可以调用该方法来执行您的代码。 Spark-shell 不会自动执行 main 方法。在您的情况下,您可以使用SparkWordCount.main(Array()) 来执行您的字数统计程序。

    【讨论】:

      猜你喜欢
      • 2020-07-25
      • 1970-01-01
      • 1970-01-01
      • 2013-11-25
      • 2016-09-10
      • 2016-07-13
      • 1970-01-01
      • 1970-01-01
      • 2018-07-02
      相关资源
      最近更新 更多