the*_*evd 7 scala fold apache-spark
下面我有一个Spark fold动作的Scala示例:
val rdd1 = sc.parallelize(List(1,2,3,4,5), 3)
rdd1.fold(5)(_ + _)
Run Code Online (Sandbox Code Playgroud)
这会产生输出35.有人可以详细解释这个输出是如何计算的吗?
从Scaladocs采取这里(重点煤矿):
@param zeroValue
op运算符的每个分区的累积结果的初始值,以及来自op运算符的不同 分区的组合结果的初始值 - 这通常是中性元素(例如,Nil用于列表连接或0求和)
该zeroValue(合并从分区结果时每个分区一个,加1)你的情况增加四倍.结果是:
(5 + 1) + (5 + 2 + 3) + (5 + 4 + 5) + 5 // (extra one for combining results)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2168 次 |
| 最近记录: |