RDD被视为由不同的数据块组成,对于RDD的存取是以数据块为单位的,本质上分区(partition)和数据块(block)是等价的,只是看待的角度不同。

数据块

Spark存储管理模块中所管理的几种主要数据块

RDD数据块:用来标识所缓存的RDD数据

Shuffle数据块:用来标识持久化的Shuffle数据

广播变量数据块:用来标识所存储的广播变量数据

任务返回结果数据块:用来标识存储在存储管理模块内部的任务返回结果

  通常情况下任务返回结果随任务一起通过Akka返回到Driver端,但是当任务返回结果很大时,会引起Akka帧溢出,这时的另一种方案是将返回结果以块的形式放入存储管理模块,然后在Driver端获取该数据块即可,因为存储管理模块内部数据块的传输是通过Socket连接的,因此就不会出现Akka帧溢出了。

流式数据块:只用在Spark Streaming中,用来表示所接收到的流式数据块。

相关文章:

  • 2022-12-23
  • 2021-08-11
  • 2021-12-19
  • 2022-12-23
  • 2021-11-13
  • 2021-11-11
  • 2021-06-12
猜你喜欢
  • 2021-08-04
  • 2021-10-24
  • 2021-08-26
  • 2021-09-20
  • 2021-10-25
  • 2022-02-26
  • 2021-12-09
相关资源
相似解决方案