1、reduce算子
package cn.spark.study.core import org.apache.spark.{SparkConf, SparkContext} object actionOpertion { def main(args: Array[String]): Unit = { reduce() } def reduce(): Unit = { val conf = new SparkConf () .setAppName ("reduce") .setMaster ("local") val sc = new SparkContext (conf) val numList = Array (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) val nRDD = sc.parallelize (numList) val result = nRDD.reduce (_+ _) println (result) } }
测试:
2、collect算子操作
def collect(): Unit ={ val conf = new SparkConf().setMaster("local") .setAppName("collect") val sc = new SparkContext(conf) val numList = Array(1,2,3,4,5,6,7) val nRDD = sc.parallelize(numList) val mid = nRDD.map(x => x * 2) val result = mid.collect() for (x <- result) println(x) }
测试:
3、count算子操作
def count(): Unit ={ val conf = new SparkConf().setMaster("local") .setAppName("collect") val sc = new SparkContext(conf) val numList = Array(1,2,3,4,5,6,7) val nRDD = sc.parallelize(numList) val mid = nRDD.map(x => x * 2) val result = mid.count() print(result) }
测试:
4、take算子操作
def take() {
val conf = new SparkConf()
.setAppName("take")
.setMaster("local")
val sc = new SparkContext(conf)
val numberArray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val numbers = sc.parallelize(numberArray, 1)
val top3Numbers = numbers.take(3)
for(num <- top3Numbers) {
println(num)
}
}
测试: