Spark的常用Transformation算子有map、filter、flatMap、reduceByKey、groupByKey、join、leftOuterJoin、rightOuterJoin、cogroup等算子。在这里进行的简历例子的使用,以后随着学习的深入需要第每个算子深入分析。
package com.spark.App
import org.apache.spark.{SparkContext, SparkConf}
/**
* Created by Administrator on 2016/8/13 0013.
*/
object Transformations {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("Transformations").setMaster("local")
val sc = new SparkContext(conf)
// mapTransformation(sc)
// filterTransformation(sc)
// flatMapTransformation(sc)
// reduceByKeyTransformation(sc)
// groupByKeyTransformation(sc)
// joinTransformation(sc)
// leftOuterJoinTransformation(sc)
// rightOuterJoinTransformation(sc)
cogroupTransformation(sc)
sc.stop()
}
/**
* 将函数应用于RDD的每个元素,将返回值构成新的RDD
* @param sc
*/
def mapTransformation(sc: SparkContext): Unit = {
val numbers = sc.parallelize(1 to 10) // 根据集合构建RDD
val mapped = numbers.map(item => 2 * item) // 每个元素扩大2倍
mapped.collect.foreach(println)
}
/**
* 返回一个由通过fil