Spark之RDD内核原理,数据共享,RDD算子优化利用累加器避免shuffle阶段

        在 Spark 中,RDD(Resilient Distributed Dataset,弹性分布式数据集)是其核心概念之一。以下是关于 Spark 中 RDD 的内核原理、数据共享以及广播变量和累加器的介绍:

目录

一、RDD 内核原理

1,弹性

2,分布式

3,不可变

二、数据共享

2-1,广播变量

2-1-1,概念

2-1-2,优势

2-1-3,使用方法

2-2,累加器

2-2-1,概念

2-2-2,优势

2-2-3,使用方法

三,总结


一、RDD 内核原理

1,弹性

  • RDD 具有弹性的特点,主要体现在以下几个方面:
    • 自动进行内存和磁盘数据存储的切换。如果内存不足,RDD 可以自动将部分数据存储到磁盘上,以避免内存溢出。
    • 基于 Lineage(血统)机制实现容错。当某个 RDD 的分区数据丢失时,可以通过其血统关系,即从父 RDD 重新计算该分区,而不是从原始数据重新计算整个 RDD。
    • 可以根据数据的局部性进行计算任务的调度,提高数据处理的效率。

2,分布式

  • RDD 是分布式的数据结构,数据被分割成多个分区,分布在不同的节点上进行并行计算。
  • Spark 可以根据集群的资源情况自动进行任务的分配和调度,充分利用集群的计算能力。

3,不可变

  • RDD 是不可变的数据结构,一旦创建就不能修改。对 RDD 的操作会返回一个新的 RDD,而不会修改原始的 RDD。
  • 这种不可变性使得 RDD 可以进行高效的并行计算,同时也方便了 Spark 的任务调度和容错处理。

二、数据共享

在 Spark 中,数据共享可以通过多种方式实现,其中广播变量和累加器是两种常用的机制。

2-1,广播变量

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值