为了账号安全,请及时绑定邮箱和手机立即绑定

Spark 算子- Action

标签:
Spark

Action算子

无输出

foreach
对RDD每个元素执行函数f,不反悔RDD和Array,而是返回Unit

webp

foreach


输出到HDFS

saveAsTextFile
数据输出,存储到HDFS
将RDD中的元素映射到(Null,x.toString),然后写入HDFS

webp

saveAsTextFile


saveAsObjectFile
将分区中的每10个元素组成一个Array,然后将Array序列化,映射为(Null,BytesWritable(Y))写入HDFS的SequenceFile格式

webp

saveAsObjectFile


Scala集合或数据

collect
相当于toArray,将分布RDD转换为单机Array

webp

collect


collectAsMap
对(K,V)型的RDD数据返回一个单机HashMap,对于重复Key,后面的元素覆盖前面的

webp

collectAsMap


reduceByKeyLocally
先reduce,再collectAsMap

lookup
对(K,V)型的RDD操作,返回指定key对应的元素形成Seq
如果RDD包含分区器,只处理K所在的分区,如果不存在分区器,对全部RDD元素进行扫描

webp

lookup


count
返回RDD元素个数

top、take
返回最大、最小的K个元素

takeOrdered
返回最小的K个元素,返回数组中保持元素顺序

first
相当于top(1)

reduce
对两个元素K,V进行reduce函数操作,将结果和迭代器取出的下一个元素进行reduce操作,直到遍历完所有元素
f(A,B)=>(A.1+"@"+B.1, A._2+B._2)

webp

reduce


fold
与reduce原理相同
相当于每个reduce时,迭代器取的一个元素是zeroValue
fold(("V0", 2))((A, B)=>(A.1+"@"+B.1, A._2+B._2))

webp

fold


aggregate
将每个分区里面的元素进行聚合,然后用combine函数将每个分区的结果和初始值(zeroValue)进行combine操作。这个函数最终返回的类型不需要和RDD中元素类型一致



作者:Alex90
链接:https://www.jianshu.com/p/2fdbb890e4e4


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消