import org.apache.spark.{SparkConf, SparkContext}
/**
* Created by liupeng on 2017/6/16.
*/
object T_reduceByKey {
System.setProperty("hadoop.home.dir","F:\\hadoop-2.6.5")
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setAppName("reduceByKey_test").setMaster("local")
val sc = new SparkContext(conf)
val list1 = List(("liupeng", 120), ("liupeng", 120), ("liusi", 120))
val rdd = sc.parallelize(list1)
//reduceByKey方法用于根据key做分组计算,但是和reduce不同,他还是属于T算子
val sum = rdd.reduceByKey((x, y) => x + y)
.foreach(println)
}
}
运行结果:
(liusi,120)
(liupeng,240)
(liupeng,240)
Spark reduceByKey方法示例
博客展示了使用Spark的reduceByKey方法进行分组计算的示例代码。通过设置Spark配置和上下文,将列表转换为RDD,使用reduceByKey方法根据key进行分组求和,最后输出计算结果,体现了该方法在数据处理中的应用。
209

被折叠的 条评论
为什么被折叠?



