Spark mapValues 功能
对Value进行操作
案例演示
需求:对val rdd: RDD[(String, Int)] = sc.makeRDD(List((“x”, 1), (“y”, 2)))中的values+9,然后输出到控制台,形式如下
(x,10)
(y,11)
package com.xcu.bigdata.spark.core.pg02_rdd.pg022_rdd_transform
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
/**
* @Desc : 对Value进行操作
*/
object Spark19_MapValues {
def main(args: Array[String]): Unit = {
//创建配置文件
val conf: SparkConf = new SparkConf().setAppName("Spark19_MapValues").setMaster("local[*]")
//创建SparkContext,该对象是提交的入口
val sc = new SparkContext(conf)
//创建RDD
val rdd: RDD[(String, Int)] = sc.makeRDD(List(("x", 1), ("y", 2)))
//将value加 9
val mapValuesRDD: RDD[(String, Int)] = rdd.mapValues((x: Int) => {
x + 9
})
//打印输出
mapValuesRDD.collect().foreach(println)
//释放资源
sc.stop()
}
}