随笔 - 39  文章 - 0  评论 - 0  阅读 - 4256

Spark 算子

Spark的算子的分类

从大方向来说,Spark 算子大致可以分为以下两类:

Transformation 变换/转换算子:这种变换并不触发提交作业,完成作业中间过程处理。Transformation 操作是延迟计算的,也就是说从一个RDD 转换生成另一个 RDD 的转换操作不是马上执行,需要等到有 Action 操作的时候才会真正触发运算。

Action 行动算子:这类算子会触发 SparkContext 提交 Job 作业。
Action 算子会触发 Spark 提交作业(Job),并将数据输出 Spark系统。

从小方向来说,Spark 算子大致可以分为以下三类:

Value数据类型的Transformation算子,这种变换并不触发提交作业,针对处理的数据项是Value型的数据。

Key-Value数据类型的Transfromation算子,这种变换并不触发提交作业,针对处理的数据项是Key-Value型的数据对。

Action算子,这类算子会触发SparkContext提交Job作业。

简单来说

转换算子:将一个RDD转换成另一个RDD, 转换算子是懒执行,需要一个action算子来触发执行

操作算子:触发任务执行,一个action算子会触发一次任务执行, 同时每一个ation算子都会触发前面的代码执行

action算子

action算子的返回值不是一个rdd, 每一个action算子都会触发一个job执行
foreach:循环RDD
saveAsTextFile:保持数据
count:统计行数
collect:将rdd转换成集合
take:取top
reduce:全局聚合
sum:求和,rdd必须可以求和

posted on   +1000  阅读(99)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示