Spark行动算子(Action)--reduce算子
生活随笔
收集整理的這篇文章主要介紹了
Spark行动算子(Action)--reduce算子
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
語法
Rdd. reduce(func)
源碼
def reduce(f : scala.Function2[T, T, T]) : T = { /* compiled code */ }作用
通過func函數(shù)聚集RDD中的所有元素,先聚合分區(qū)內(nèi)數(shù)據(jù),再聚合分區(qū)間數(shù)據(jù)。
例子
package com.day1import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext}object oper {def main(args: Array[String]): Unit = {val config:SparkConf = new SparkConf().setMaster("local[*]").setAppName("wordCount")// 創(chuàng)建上下文對象val sc = new SparkContext(config)val rdd = sc.makeRDD(1 to 10,2)println(rdd.reduce(_+_)) // 55val rdd2 = sc.makeRDD(Array(("a",1),("b",3),("c",3),("d",5)))println(rdd2.reduce((x,y)=>(x._1 + y._1,x._2 + y._2))) //("abcd",12)} }輸入 1 2 3 4 5 6 7 8 9 10 ("a",1),("b",3),("c",3),("d",5) 輸出 55 ("abcd",12)總結(jié)
以上是生活随笔為你收集整理的Spark行动算子(Action)--reduce算子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。