Spark大数据分析 课件 4.5 RDD机制_第1页
Spark大数据分析 课件 4.5 RDD机制_第2页
Spark大数据分析 课件 4.5 RDD机制_第3页
Spark大数据分析 课件 4.5 RDD机制_第4页
Spark大数据分析 课件 4.5 RDD机制_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RDD机制目录/Contents01持久化机制01容错机制持久化机制01持久化机制多次对某个RDD进行transformation或者action,如果没有做RDD持久化,那么每次都要重新计算一个RDD,会消耗大量时间,降低Spark性能。Spark非常重要的一个功能特性就是可以将RDD持久化在内存中。当对RDD执行持久化操作时,每个节点都会将自己操作的RDD的partition持久化到内存中,并且在之后对该RDD的反复使用中,直接使用内存缓存的partition。这样的话,对于针对一个RDD反复执行多个操作的场景,就只要对RDD计算一次即可,后面直接使用该RDD,而不需要反复计算多次该RDD。持久化机制存储级别说明

MEMORY_ONLY将RDD以反序列化Java对象的形式存储在JVM中。如果内存空间不够,部分分区将不再缓存,在每次需要用到这些数据时重新进行计算。这是默认的存储级别。

MEMORY_AND_DISK将RDD以反序列化Java对象的形式存储在JVM中。如果内存空间不够,将未缓存的数据分区存储到磁盘,在需要使用这些分区时从磁盘读取。

MEMORY_ONLY_SER将RDD以序列化的Java对象的形式进行存储(每个分区为一个字节数组)。这种方式比反序列化的Java对象节省空间,但是在读取时会增加CPU的计算负担。

MEMORY_AND_DISK_SER类似于MEMORY_ONLY_SER,但是溢出的分区会存储到磁盘,而不是在用到它们时重新计算。DISK_ONLY只在磁盘上缓存RDD。

MEMORY_ONLY_2,MEMORY_AND_DISK_2与上面的级别功能相同,只不过每个分区在集群中两个节点上建立副本。需要加上后缀_2,代表的是将每个持久化的数据都复制一份副本,并将副本保存到其他节点上。

OFF_HEAP类似于MEMORY_ONLY_SER,但是将数据存储在off-heapmemory(堆外内存),这需要启动off-heap内存。持久化机制1.如何选择存储级别Spark的存储级别的选择,核心问题是在内存使用率和CPU效率之间进行权衡。2.cache()和persist()的区别cache()和persist()的区别在于,cache()是persist()的一种简化方式,cache()的底层就是调用的persist()的无参版本,同时就是调用persist(MEMORY_ONLY),将数据持久化到内存中。容错机制02容错机制Spark的计算本质就是对RDD做各种转换,因为RDD是一个不可变只读的集合,因此每次的转换都需要上一次的RDD作为本次转换的输入,因此RDD的lineage描述的是RDD间的相互依赖关系。为了保证RDD中数据的健壮性,RDD数据集通过所谓血统关系(lineage)记住了他是如何其他RDD中演变过来的。Spark将RDD之间的关系规类为宽依赖和窄依赖。Spark会根据Lineage存储的RDD的依赖关系对RDD计算做故障容错,目前Spark的容错策略主要是根据RDD依赖关系重新计算、对RDD做cache、对RDD做checkpoint手段完成RDD计算的故障容错。容错机制SparkRDD实现基于Lineage的容错机制,基于RDD的各项transformation构成了computechain,在部分计算结果丢失的时候可以根据Lineage重新恢复计算。

(1)在窄依赖中,在子RDD的分区丢失,要重算父RDD分区时,父RDD相应分区的所有数据都是子RDD分区的数据,并不存在冗余计算。(2)在宽依赖情况下,丢失一个子RDD分区,重算的每个父RDD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论