为什么spark中叫算子不叫方法以及算子之间的区别

博客探讨了在Spark中为何将RDD的操作称为算子而非方法。算子在Executor中执行,与scala集合对象的方法在Driver端执行不同,这导致了执行顺序和数据有序性的区别。例如,foreach和collect分别在Execute端和Driver端执行,前者可能导致乱序输出,而后者则保证有序。此外,算子与接口IndexedSeqOptimized的方法也有所区分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天博主在学习spark中一直在用算子,突然很困惑为什么要叫算子而不是方法呢?
答:
算子:(Operation)
是为了区分和scala集合对象的方法,集合对象的方法都是在同一个节点中完成的,RDD的方法也就是算子都是在Executor中执行,为了区分两者,所以称之为算子。

foreachcollect.foreach
Execute端执行操做在driver端执执行操作
每个Execute进行输出,所以乱序Execute端反馈给driver,driver端进行整合输出,所以是有序
类RDD的方法接口IndexedSeqOptimized的方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

布丁味

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值