第五章_Spark核心编程_Rdd_行动算子_reduce

 


1. 定义

复制代码
  /*
  * 1.定义
  *     def reduce(f: (T, T) => T): T
  * 2.功能
  *     聚集 RDD 中的所有元素,先聚合分区内数据,再聚合分区间数据
  * 3.note
  *     1.先在map端reduce,再将结果拉取到Driver上进行reduce
  *     2.当 计算不满足结合律和交换律时,分区数量会影响reduce的结果
  *
  * */
复制代码

2. 示例

复制代码
  object reduceTest extends App {

    val sparkconf: SparkConf = new SparkConf().setMaster("local").setAppName("distinctTest")

    val sc: SparkContext = new SparkContext(sparkconf)

    private val rdd: RDD[Int] = sc.makeRDD(List(8, 2, 4, 2), 4)

    private val sum: Int = rdd.reduce(_ - _)

    println(sum)

    sc.stop()
  }
复制代码

 

posted @   学而不思则罔!  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
点击右上角即可分享
微信分享提示