Fork me on GitHub

pyspark之常用算子

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

 

posted @ 2020-08-14 21:23  西西嘛呦  阅读(924)  评论(0)    收藏  举报