spark算子理解

map:将源JavaRDD的一个一个元素的传入call方法,并经过算法后一个一个的返回从而生成一个新的JavaRDD

flatMap:比map多的功能是能在任何一个传入call方法的元素后面添加任意多元素,而能达到这一点,正是因为其进行传参是依次进行的

mapPartitions:传参的方式是将整个RDD传入,然后将一个迭代器传出生成一个新的RDD

keyBy:将给从RDD传入的参数一个Key,让其成为K,V对,这个K就是call方法的返回值,而这个K对应的V则是传入call方法的参数

mapValues:只修改value而不修改key,所以call方法中,只传入value,返回值是修改后的新value

flatMapValues:修改value的同时可以新增键值对,键是和传入的V相同的键

reduce:RDD中的所有元素进行合并,当运行call方法时,会传入两个参数,在call方法中将两个参数合并后返回,而这个返回值回合一个新的RDD中的元素再次传入call方法中,继续合并,直到合并到只剩下一个元素时。

reduceByKey:仅将RDD中所有K,V对中K值相同的V进行合并

union:简单的将两个RDD累加起来,可以看做List的addAll方法

groupByKey:将PairRDD中拥有相同key值得元素归为一组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值