【スカラSBT] 05を使用スパーク単語頻度統計

私たちは、コマンドラインの中で単語頻度統計火花を完了するために、対話モードで学んできた、このセクションでは、それらのScalaのコードの完全なアイデアSBT環境の使用、および単語頻度統計を説明します。

1つのシステム、ソフトウェア、および前提制約

  • CentOSの192.168.100.200でIPマシンの7台の64ワークステーション、ホスト名danjiは、読者は自分の実際の状況に応じて設定されています
  • Linuxの単語頻度統計に完成Scalaの対話モード
    https://www.jianshu.com/p/92257e814e59
  • 統計は、名前/ワードとして、HDFSにアップロードWordファイルでなければなりません
  • 最初のテストプログラムは、のScalaの考え方完了した
    https://www.jianshu.com/p/ec64c70e6bb6を
  • アイデア2018.2
  • 操作の影響を除去するための許可は、すべての操作をルートするために行われています

2操作

  • 1でのsbtプロジェクトのアイデアを作成して
    選択し、ファイル- >新規作成- >プロジェクト- > Scala-> sbt->次の
    プロジェクトSBTの作成
    いくつかの時間がかかります。
  • 設定は2依存性:
    build.sbtに以下を追加します。
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.1.0"
  • 3 WordCount.scalaは、次の内容ではsrc /メイン/のScalaではクラスを作成します
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
 
object ScalaWordCount {
  def main(args: Array[String]): Unit = {
   //在windows下执行,必须设置本地的hadoop安装路径,倘若打成jar包,上传到linux,则不需要设置
    System.setProperty("hadoop.home.dir", "C:\\hadoop2.7.2")
    val conf: SparkConf = new SparkConf().setAppName("WordCount").setMaster("local[2]")
    // 创建SparkContext
    val sc: SparkContext = new SparkContext(conf)
    sc.textFile("hdfs://192.168.100.200:9000/word")
      .flatMap(_.split(" "))
      .map((_,1))
      .reduceByKey(_+_)
      .saveAsTextFile("hdfs://192.168.100.200:9000/outputscala")

    // 释放资源
    sc.stop()
  }
}
  • ビューHDFSのサービスの中で4実行、あなたは結果を見ることができますoutputscala。
    上記の我々は、プロセスScalaの単語頻度の統計に使用火花です。

おすすめ

転載: www.cnblogs.com/alichengxuyuan/p/12576807.html