代码语言:javascript复制
rdd=sc.paralelize([1,2,3,4,5])
#查看分区数
rdd.getNumPartitions()
输出:4
#数据按照分区形式打印
rd.glom().collect()
输出:[[1],[2],[3],[4,5]]
1、map和flatMap
2、reduce、fold、aggregate
(1)reduce
这里是两种方式,输出是:15
(2)fold
x:初始聚合值,y:当前元素,zero的值就是初始聚合值,初始聚合值的类型决定了最后返回的类型。
最终输出:13
(3) aggregate
第二行输出:[[2,4],[6,1]]
最后输出:13
3、filter, distinct
第二行结果:[1,2,3,2,3,4,3,4,5,4,5,6,5,6,7]
第四行结果:[2,2,4,4,6,6]
第五行结果:[1,2,3,4,5,6,7]
4、交集insersection、并集union、排序sortBy
5、PairRDD的算子
groupByKey、reduceByKey、aggregateByKey
reduceByKeyLocally:
返回的就不是rdd格式的了,返回一个字典。