Spark的pipeline计算模式

本文介绍了Spark计算的核心——RDD的宽窄依赖关系,以及Stage的划分原则。文章详细阐述了窄依赖与宽依赖的区别,并通过实例说明了pipeline计算模式如何实现任务的并行执行,强调了Spark计算的高效性和并行性。
摘要由CSDN通过智能技术生成

Spark计算数据是基于pipeline模式的,在介绍spark如何进行pipeline计算之前首先要知道spark计算的核心是RDD,RDD之间是有依赖关系的,这种依赖关系分宽依赖和窄依赖,那么问题来了,RDD之间的宽窄依赖是如何划分的呢?

在上一篇博客中提到:(https://blog.csdn.net/Chris_MZJ/article/details/84198189 )RDD内部是由一系列的partition组成的:
在这里插入图片描述

宽窄依赖划分

宽窄依赖就是根据RDD与RDD之间的partition的对应关系划分的,我们来看下图:

在这里插入图片描述

左半部分是RDD之间的窄依赖关系,右半部分是宽依赖关系。

从上图可以看出RDD1执行map或filter操作得到RDD2过程中,RDD1中的三个partition中的数据都流向了RDD2的三个partition中,且每一个partition中的数据都只流向了同一个partition中(RDD实际上是不存数据的,流动的是逻辑),我们就称RDD1和RDD2是窄依赖关系。同理,RDD3和RDD4执行union操作得

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值