Spark基础学习笔记19:RDD的依赖与Stage划分

本文详细介绍了Spark中RDD的依赖类型,包括窄依赖和宽依赖,通过map(), filter(), union(), join()等算子实例说明其特点。同时阐述了Stage的划分原则,根据有向无环图DAG进行Stage的确定,分析了Shuffle在宽依赖中的作用以及对Stage划分的影响,最后通过案例解析了Stage的划分过程。" 103144551,9134742,Python函数与代码复用详解,"['Python编程', '函数使用', '代码复用', '教育', '河南师范大学']

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

零、本讲学习目标

  1. 理解RDD的宽依赖与窄依赖
  2. 理解Spark根据DAG将计算划分多个阶段

一、RDD的依赖

  • 在Spark中,对RDD的每一次转化操作都会生成一个新的RDD,由于RDD的懒加载特性,新的RDD会依赖原有RDD,因此RDD之间存在类似流水线的前后依赖关系。这种依赖关系分为两种:窄依赖和宽依赖。

(一)窄依赖

  • 窄依赖是指父RDD的一个分区最多被子RDD的一个分区所用。也就是说,父RDD的分区与子RDD的分区的对应关系为一对一或多对一。例如,map()、filter()、union()、join()等操作都会产生窄依赖。

1、map()与filter()算子

  • 一对一的依赖
    在这里插入图片描述

2、union()算子

  • 多对一的依赖
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

酒城译痴无心剑

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

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

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

打赏作者

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

抵扣说明:

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

余额充值