Spark RDD的fold和aggregate为什么是两个API?为什么不是一个foldLeft?
大家都知道Scala标准库的List有一个用来做聚合操作的foldLeft方法。
比如我定义一个公司类:
1 | case class Company(name:String, children:Seq[Company]=Nil) |
它有名字和子公司。
然后定义几个公司:
1 | val companies = List(Company("B"),Company("A"),Company("T")) |
三家大公司,然后呢,我假设有一家超牛逼的公司把它们给合并了: