Sparkcore学习(一)

SparkCore-基本概述

RDD概述

弹性分布式数据集,Spark中最基本的数据抽象。代码中的是一个抽象类,其代表一个弹性、不可变、可分区、内部元素可并行计算的集合

RDD特点

  1. 弹性
  2. 存储:内存与硬盘自动切换,可以存储在内存或者磁盘中
  3. 计算:数据丢失可以自动恢复
  4. 容错:计算出错有重试机制
  5. 分片:可以根据需要重新分片
  6. 分布式
    • 数据存储在大数据集群上的不同节点上
  7. 数据集,不存储数据
    • RDD只是封装了计算逻辑,并不保存数据
  8. 数据抽象
    • RDD是一个抽象类,需要子类具体实现
  9. 不可变
    • RDD封装了计算逻辑,因此其不可变,想要修改,只能产生新的RDD,在新的RDD里面封装新的计算逻辑
  10. 可分区,并行计算

RDD特性

  1. 分区列表
    • 数据集的基本组成单位,标记数据是那个分区
  2. 计算每个分区的函数
    • 分区数据的计算逻辑
  3. RDD之间依赖关系
    • 本RDD需要的数据需要通过那些计算(之前的RDD的计算逻辑)得到
  4. 分区器
    • RDD的分片函数,控制分区的数据流向
  5. 块优先位置
    • 存储每个分区器的优先位置,尽量是计算向数据靠拢(除非机器上的计算资源不足以支持本次计算)
posted @ 2021-11-07 15:05  KaneQi  阅读(48)  评论(0编辑  收藏  举报