RDD的依赖关系, 宽依赖, 窄依赖, Lineage血统 10

博客介绍了RDD和其父RDD的依赖关系,包括窄依赖和宽依赖。窄依赖指父RDD的Partition最多被子RDD一个Partition使用;宽依赖指多个子RDD的Partition依赖同一父RDD的Partition。还阐述了Lineage(血统),它记录RDD元数据和转换行为,可用于恢复丢失分区,且缓存和设置检查点对血统有不同影响。

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

1. RDD的依赖关系

RDD和它依赖的父RDD的关系有两种不同的类型,

  • 窄依赖(narrow dependency)
  • 宽依赖(wide dependency)
    在这里插入图片描述

2. 窄依赖 narrow dependency

窄依赖指的是每一个父RDD的Partition最多被子RDD的一个Partition使用.
总结: 窄依赖可以形象的比喻为独生子女.

3. 宽依赖

宽依赖指的的是多个子RDD的Parition会依赖同一个父RDD的Parition
总结: 宽依赖我们形象的比喻为超生

4. Lineage(血统)

  • RDD只支持粗粒度转换,即只记录单个块上执行的单个操作. 将**创建RDD的一系列Lineage(血统)**记录下来, 一边回复丢失的分区.
  • RDD的Lineage会记录RDD的元数据信息和转换行为, 当该RDD的部分分区数据丢失时, 它可以根据这些信息来重新运算和恢复丢失的数据分区.
  • 可以使用rdd.persist()或者rdd.checkpoint()将血统保存下来
    • 缓存后,血统不变
    • 设置检查点后,血统改变.

RDD的容错详解, 请看下篇

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值