大数据全系列 教程
1869个小节阅读:467.9k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
作用:统计key出现的次数(适用于KeyValue型的RDD)
本地运行测试:
xxxxxxxxxx
package com.itbaizhan.rdd.action
//1.导入类
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object RddCountByKey {
def main(args: Array[String]): Unit = {
//2.构建SparkConf对象,并设置本地运行和程序名称
val conf: SparkConf = new SparkConf().setMaster("local[1]").
setAppName("foreach")
//3.使用conf对象构建SparkContet对象
val sc = new SparkContext(conf)
//5.创建KeyValue型RDD对象
val rdd: RDD[(String, Int)] = sc.parallelize(List(("a", 1), ("b", 1), ("a", 2), ("b", 2), ("a", 3), ("a", 4)))
//6.复习转换算子reduceByKey:将相同key的value值做聚合操作
val rdd2: RDD[(String, Int)] = rdd.reduceByKey(_ + _)
println(rdd2.collect().mkString(","))
//7.行动算子countByKey 表示统计key出现次数
val result: collection.Map[String, Long] = rdd.countByKey()
result.foreach(println)
//4.关闭sc对象
sc.stop()
}
}