## 常见的转化操作和行动操作##
- map
map是对RDD中的每个元素都执行一个指定的函数来产生一个新的RDD;RDD
之间的元素是一对一的关系。
val rdd1 = sc.parallelize(1 to 9,3)
val rdd2 = rdd1.map(x=>x*2)
rdd2.collect
- filter
filter是对RDD元素进行过滤;返回一个新的数据集,有经过func函数后返回值为true的原元素组成。
val rdd3 = rdd2.filter(x=>x>10)
rdd3.collect
- flatMap
flatMap类似与map,但是每一个输入元素,会被映射为0到多个输出元素,RDD之间的元素是一对多的关系。
scala实现切分单词
val lines = sc.parallelize(List("hello spark","hi java"))
val words =lines.flatMap(line=>line.split(" "))
集合操作
union():并集
intersection():交集
subtract():差集
cartesian():笛卡尔集
distinct():去重sample
随机采样
val rdd = sc.parallelize(1 to 10000,3)
a.sample(false,0.1,0).count
false 不放回抽样,0.1表示抽样比例,0表示随机种子