在Spark程序的main方法中有如下代码: val spark = SparkSession.builder()                 .appName("aggregate")                 .master("local[1]")                 .getOrCreate() val sc: SparkContext = spark.sparkContext val rdd2: RDD[Int] = sc.parallelize(List(0, 2, 4, 6, 8, 10), 2) val res = rdd2.aggregate(2)(Math.min(_, _), _ + _) println("res:" + res) spark.close() 那么res的值是( )

区块链毕设网qklbishe.com为您提供问题的解答

在Spark程序的main方法中有如下代码:
val spark = SparkSession.builder()                 .appName("aggregate")                 .master("local[1]")                 .getOrCreate()  val sc: SparkContext = spark.sparkContext  val rdd2: RDD[Int] = sc.parallelize(List(0, 2, 4, 6, 8, 10), 2)  val res = rdd2.aggregate(2)(Math.min(_, _), _ + _)  println("res:" + res)  spark.close()
那么res的值是( )

aggregate函数接受三个参数:
初始值(zeroValue): 初始值为 2;
聚合函数(SeqOp):每个分区中的聚合函数,Math.min(_,_)表示分区最小值;
组合函数(comOp): 合并所有分区聚合结果  _ +_ 表示进行求和;
注意:aggregate函数将每个分区里面的元素通过分区内逻辑和初始值进行聚合,分区间逻辑和初始值进行组合操作。    也就是说聚合时两个分区的数据为[0,2,2,4]和[2,6,8,10],聚合结果为0和2.将聚合结果与初始值进行组合操作(相+)为 0+2+2 =4

50:32

以上就是关于问题在Spark程序的main方法中有如下代码: val spark = SparkSession.builder()                 .appName("aggregate")                 .master("local[1]")                 .getOrCreate() val sc: SparkContext = spark.sparkContext val rdd2: RDD[Int] = sc.parallelize(List(0, 2, 4, 6, 8, 10), 2) val res = rdd2.aggregate(2)(Math.min(_, _), _ + _) println("res:" + res) spark.close()
那么res的值是( )的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

承接区块链项目定制开发

微信:btc9767

QQ :1330797917

TELEGRAM: BTCOK9

承接区块链项目定制开发


qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在Spark程序的main方法中有如下代码: val spark = SparkSession.builder()                 .appName("aggregate")                 .master("local[1]")                 .getOrCreate() val sc: SparkContext = spark.sparkContext val rdd2: RDD[Int] = sc.parallelize(List(0, 2, 4, 6, 8, 10), 2) val res = rdd2.aggregate(2)(Math.min(_, _), _ + _) println("res:" + res) spark.close() 那么res的值是( )