pyspark之常用算子

2020-08-26 09:56:39 浏览数 (1)

代码语言: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格式的了,返回一个字典。

0 人点赞