本文主要是介绍Spark RDD Actions操作之reduce(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
textFile.map(line => line.split(" ").size).reduce((a, b) => if (a > b) a else b)
The arguments to reduce() are Scala function literals (closures)。
reduce将RDD中元素两两传递给输入函数? 同时产生一个新的值,新产生的值与RDD中下一个元素再被传递给输入函数直到最后只有一个值为止。
Scala的anonymous(匿名函数):
def num(x: Int, y: Int) => if(x > y) x else y
Scala的currying(柯里化):
def num(x: Int)(y: Int) => if(x > y) x else y
def num(x: Int) = (y: Int) => if(x > y) x else y
这篇关于Spark RDD Actions操作之reduce()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!