使用SparkSQL编写wordCount的词频统计

Posted Nahshon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用SparkSQL编写wordCount的词频统计相关的知识,希望对你有一定的参考价值。

 使用SparkSQL编写wordCount的词频统计:

 

word.txt 文件:

hello hello scala spark
java sql html java hello
jack jack tom tom you he he sql

 

IDEA编写的 spark 代码:

object WordCount {

  def main(args: Array[String]): Unit = {

    val spark: SparkSession = SparkSession.builder()
    .appName("wordCount")
    .master("local[*]")
    .getOrCreate()

    //读取数据
    val ds: Dataset[String] = spark.read.textFile("文件路径/word.txt")
    //引包,不然无法调用 flatMap()
    import spark.implicits._
    //整理数据 (切分压平)
    val ds1: Dataset[String] = ds.flatMap(_.split(" "))
    //构建临时表
    ds1.createTempView("word")
    //执行 SQL 语句,结果倒序
    val df: DataFrame = spark.sql("select value,count(*) count from word group by value order by count desc")
    //展示
    df.show()
    //关闭
    spark.stop()
  }

}

 

运行结果:

+-----+-----+
|value|count|
+-----+-----+
|hello| 3|
| tom| 2|
| java| 2|
| sql| 2|
| he| 2|
| jack| 2|
| you| 1|
| html| 1|
|spark| 1|
|scala| 1|
+-----+-----+

 



如果哪里有错误,欢迎大家指出...

以上是关于使用SparkSQL编写wordCount的词频统计的主要内容,如果未能解决你的问题,请参考以下文章

使用Scala语言调用Flink框架进行WordCount词频统计测试不同Parallelism并行度对运算速度的影响

Spark WordCount 文档词频计数

mapreduce 词频统计

python菜鸟教程 | wordcount词频统计

1.英文词频统2.中文词频统计

实验6:Mapreduce实例——WordCount