IntelliJ进行Spark编程之WordCount

时间:2019-03-25
本文章向大家介绍IntelliJ进行Spark编程之WordCount,主要包括IntelliJ进行Spark编程之WordCount使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

项目目录如下:

代码:

import org.apache.spark.{SparkConf, SparkContext}

object WordCount{
  def main(args:Array[String]) : Unit ={
    val conf=new SparkConf().setAppName("word count").setMaster("local");
    val sc=new SparkContext(conf);
    val rdd=sc.textFile("C:\\Users\\Administrator\\Desktop\\words.txt");
    val count=rdd.flatMap(x=>x.split(" ")).map(x=>(x,1)).reduceByKey((x,y)=>x+y).sortBy(x=>x._2,false,1);
    count.foreach(x=>println(x._1+"\t"+x._2));
  }
}

输出:

生成jar包的代码:

package demo
import org.apache.spark.{SparkConf, SparkContext}

object WordCount{
  def main(args:Array[String]) : Unit ={
    val conf=new SparkConf().setAppName("word count");
    val sc=new SparkContext(conf);
    val input=args(0);
    val output=args(1);
    val rdd=sc.textFile(input);
    val count=rdd.flatMap(x=>x.split(" ")).map(x=>(x,1)).reduceByKey((x,y)=>x+y).sortBy(x=>x._2,false,1);
    count.saveAsTextFile(output);
  }
}