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()
}
}
本文通过实例展示了如何使用Apache Spark的mapValues函数对RDD中值类型为Int的元素进行操作,即每个元组的第二个元素增加9,并将结果打印到控制台。主要涉及SparkContext、RDD创建及mapValues的使用。
3551

被折叠的 条评论
为什么被折叠?



