美文网首页
spark的存储管理中的RDD持久化

spark的存储管理中的RDD持久化

作者: scott_alpha | 来源:发表于2019-10-12 13:54 被阅读0次

1.RDD持久化选项:
memory_only:以非持久化的方式存在于内存(默认):
memory_and_disk:以非持久化的方式将RDD以Java对象的方式存在于内存中,当无法容纳时将其存储于磁盘。
memory_only_ser:以序列化的方式将RDD存于内存
disk_only:将RDD分区存于磁盘。
提交作业首次执行时,我们可以调用RDD提供的persist或者cache方法进行操作,再次使用该RDD时可以直接从之前的缓存区获得而无需再次进行计算。
2.具体选项
内存缓存:RDD中的每一个分区所对应的数据块会被内存缓存memorystore管理,缓存在内部是一个哈希表,数据块名称为键,值为数据块内容。当内存达到我们设置的阈值时,会执行一些释放内存空间的策略,丢弃数据块或者将数据块存储到磁盘上。若丢弃即直接删除数据块,是否影响spark程序的错误恢复机制要看依赖关系的可回溯性。若删除的RDD的父RDD是可回溯的,则删除后不影响错误恢复,如果此RDD本身就是第一个RDD,且数据无法被回溯,则程序会出错。
3.磁盘缓存
首先数据块会被放在磁盘中我们设置的目录下。
其次,在磁盘中文件的名字与数据块名的映射关系是通过哈希算法得到的。

相关文章

  • spark的存储管理中的RDD持久化

    1.RDD持久化选项:memory_only:以非持久化的方式存在于内存(默认):memory_and_disk:...

  • RDD持久化

    RDD持久化 Spark非常重要的一个功能特性就是可以将RDD持久化在内存中。当对RDD执行持久化操作时,每个节点...

  • Spark RDD 持久化

    RDD Persistence Spark非常重要的一个功能特性就是可以将RDD持久化在内存中。当对RDD执行持久...

  • Spark相关文章索引(3)

    环境部署 Spark2.1.0的Standalone模式部署 基本常识 spark中的rdd的持久化 Spark入...

  • RDD编程

    1.读取数据,将RDD持久化到内存中,并进行行动操作。 2.一般常用的是从外部存储中读取来创建RDD,如Spark...

  • Spark 6. RDD 持久化

    RDD 持久化 原文地址: http://spark.apache.org/docs/latest/program...

  • 面试 | Spark知识点@20190105

    Spark中持久化和容错checkpint的区别 checkpoint是考虑安全性,RDD可以使用persist或...

  • Spark RDD持久化级别

    RDD持久化用于RDD重用和节省重新计算,方便构建迭代算法,缓存粒度为整个RDD 持久化级别 如何选择存储级别? ...

  • spark的存储管理中的shuffle持久化

    与RDD持久化不同之处是:shuffle持久化必须是在磁盘;其次,每一个RDD基于磁盘的持久化都会有一个文件,而s...

  • RDD持久化策略

    RDD持久化是可以手动选择不同的策略的。比如可以将RDD持久化在内存中、持久化到磁盘上、使用序列化的方式持久化,多...

网友评论

      本文标题:spark的存储管理中的RDD持久化

      本文链接:https://www.haomeiwen.com/subject/cdeqmctx.html