简述RDD

RDD(Resilient Distributed Dataset)是Spark中的基础组件,具备弹性、容错和并行计算特性。它作为不可变数据集,存储在集群的不同节点上,支持内存与磁盘自动切换,数据丢失可恢复。RDD的计算逻辑封装在内部,通过分区列表、分区函数和依赖关系组织,可以自定义分区器和首选位置。Spark执行时,将计算任务分配给计算节点,实现分布式计算。
摘要由CSDN通过智能技术生成

RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据处理模型。代码中是一个抽象类,它代表一个弹性的、不可变的、可分区、元素可并行计算的集合。

  • 弹性
    • 存储的弹性:内存与磁盘的自动切换。Spark在执行任务的时候会将数据放在内存中,提高效率。但是不能占满内存,这时候就会自动切换为磁盘存储了;
    • 容错的弹性:数据丢失可以自动恢复。根据血缘自动恢复;
    • 计算的弹性:计算出错重试机制。出错了可以根据之前的逻辑进行重试;
    • 分片的弹性:可根据需要重新分片。比如根据executor数重新进行分区,以提高资源利用率和效率;
  • 分布式:数据存储在大数据集群不同节点上
  • 数据集:RDD封装了计算逻辑,并不保存数据
  • 数据抽象:RDD是一个抽象类,需要子类具体实现
  • 不可变:RDD封装了计算逻辑,是不可变的,想要改变,只能产生新的RDD,在新的RDD里面封装计算逻辑
  • 可分区、并行计算

RDD核心属性

  • 分区列表
    RDD数据结构中存在分区列表,用于执行任务时并行计算,是实现分布式计算的重要属性。
  • 分区计算函数
    Spark在计算时,是使用分区函数对每一个分区进行计算
  • RDD之间的依赖关系
    RDD是计算模型的封装,当需求中需要将多个计算模型进行组合时,就需要将多个RDD建立依赖关系。
  • 分区器(可选)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值