Spark学习(2) RDD编程

RDD(Resilient Distributed Dataset)叫做分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、弹性、里面的元素可并行计算的集合
RDD允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,这极大地提升了查询速度
RDD支持两种操作:转化操作和行动操作
Spark采用惰性计算模式,RDD只有第一次在一个行动操作中用到时,才会真正计算
属性:
    一组分区(Partition)
    一个计算每个分区的函数
    RDD之间的依赖关系
    一个Partitioner
    一个列表 移动数据不如移动计算
  • 每个节点可以起一个或多个Executor。
  • 每个Executor由若干core组成,每个Executor的每个core一次只能执行一个Task。
  • 每个Task执行的结果就是生成了下一个RDD的一个partiton。

特点:

分区:RDD逻辑上是分区的,每个分区的数据是抽象存在的

只读:RDD是只读的,要想改变RDD中的数据,只能在现有的RDD基础上创建新的RDD

依赖:RDDs通过操作算子进行转换,转换得到的新RDD包含了从其他RDDs衍生所必需的信息,RDDs之间维护着这种血缘关系,也称之为依赖

缓存:如果在应用程序中多次使用同一个RDD,可以将该RDD缓存起来,这样就加速后期的重用

checkPoint:RDD支持checkpoint将数据保存到持久化的存储中,这样就可以切断之前的血缘关系

Original: https://www.cnblogs.com/cheng9999/p/11891830.html
Author: cheng_blog
Title: Spark学习(2) RDD编程

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/621502/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球