2.3.1.1 Value类型-map()映射
1、格式map算子:
map(f :T => U) :RDD[U]
2、功能:
1、原来RDD调用map算子时,会遍历原来RDD中的元素
2、原来RDD中的元素会依次通过map算子中实参函数f
3、最终原来RDD中的所有元素通过map算子中实参函数f后会形成一个新的RDD
4、新的RDD和原来RDD中元素的分区不会改变(即不会shuffle,不会落盘);元素类型可能会改变(如Int元素在f中发生字符串拼接)
3、例子:将原来RDD中的元素扩大2倍
1. package com.zhaoxuan.scalatest
2.
3.import org.apache.spark.rdd.RDD
4.import org.apache.spark.{SparkConf, SparkContext}
5.
6./**
7. * 3、例子:将原来RDD中的元素扩大2倍
8. * */
9.object MapTest {
10. def main(args: Array[String]): Unit = {
11. val conf :SparkConf = new SparkConf().setAppName("map算子举例").setMaster("local[*]")
12. val sc :SparkContext= new SparkContext(conf)
13. val arrrRdd :RDD[Int]= sc.makeRDD(Array(1,2,3,4,5))
14. //arrrRdd.map((a :Int) => (a * 2))
15. val twoRdd :RDD[Int] = arrrRdd.map(_ * 2)
16. twoRdd.collect().foreach(println)
17. }
18.}