经验 | Hadoop 生态圈 - 分组聚合

原文:https://www.yuque.com/htqmz8/zxoy13/mbgau7

Hadoop 生态圈即全部组件 - 原创 wangwei(qq 邮箱:1040691703@qq.com) 转载复制请联系作者

1、本地模式运行结果:

经验 | Hadoop 生态圈 - 分组聚合

res4: Array[(String, Int)] = Array((Hello,4), (Content,1), (1040691703@qq.com,1), (wangwei,3), (IS-RPA,1), (Hadoop,2))

2、编写代码运行:

pom 文件:

经验 | Hadoop 生态圈 - 分组聚合
经验 | Hadoop 生态圈 - 分组聚合

测试文件

经验 | Hadoop 生态圈 - 分组聚合

代码运行


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

    val config:SparkConf = new SparkConf().setMaster("local[*]").setAppName("WordCount")

    // 创建上下文对象(sc)
    val sc = new SparkContext(config)
    println(sc)

    // 读取文件
    val lines: RDD[String] = sc.textFile("input")  

    val words: RDD[String] = lines.flatMap(_.split(" "))

    val wordToOne: RDD[(String,Int)] = words.map( (_,1) ) // (String,Int):key val对

    val wordToSum: RDD[(String,Int)]  = wordToOne.reduceByKey(_+_)

    val result: Array[(String,Int)]  = wordToSum.collect() 
//    println(result)   // 结果:[Lscala.Tuple2;@f446158
    result.foreach(println)

  }

代码运行结果

经验 | Hadoop 生态圈 - 分组聚合

(Hello,4)
(1040691703@qq.com,1)
(wangwei,3)
(IS-RPA,1)
(Content,1)
(Hadoop,2)

web 浏览

经验 | Hadoop 生态圈 - 分组聚合

经验 | Hadoop 生态圈 - 分组聚合