版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Luomingkui1109/article/details/86088474
1.map与flatMap的区别
# 初始化数据
val rdd1 = sc.parallelize(Array("hello world","i love you"))
1.1 map
# map算子
rdd1.map(_.split(" ")).collect
# map算子结果输出
res0: Array[Array[String]] = Array(Array(hello, world), Array(i, love, you))
1.2 flatMap
# flatMap算子
rdd1.flatMap(_.split(" ")).collect
# flatMap算子结果输出
res1: Array[String] = Array(hello, world, i, love, you)
flatMap是将数据先进行map转化,在通过flattern对map结果进行’压平’。也就是将map转化的2个Array压平处理。