zoukankan      html  css  js  c++  java
  • 1.11学习总结:持久化

    一、持久化

    多次计算时,可能会重复利用一个数值,每次需要从头到尾的计算得出这个数值较为麻烦,所以可以将此RDD持久化,直接使用

    二、实例

     在此代码中,第一次执行计算是rdd.count()函数,当执行到rdd.collect()时,会重复执行之前的代码,rdd会被重复生成并计算

    三、持久化方式

    可以使用persist()方法将一个RDD持久化,但是只是标记为持久化,只有当第一个行动操作执行后才会被真正持久化

    持久化级别 说明

    MEMORY_ONLY

    使用未序列化的Java对象格式,将数据保存在内存中。如果内存不够存放所有的数据,则数据可能就不会进行持久化。那么下次对这个RDD执行算子操作时,那些没有被持久化的数据,需要从源头处重新计算一遍。
    MEMORY_AND_DISK 使用未序列化的Java对象格式,优先尝试将数据保存在内存中。如果内存不够存放所有的数据,会将数据写入磁盘文件中,下次对这个RDD执行算子时,持久化在磁盘文件中的数据会被读取出来使用。
    MEMORY_ONLY_SER 基本含义同MEMORY_ONLY。唯一的区别是,会将RDD中的数据进行序列化,RDD的每个partition会被序列化成一个字节数组。这种方式更加节省内存,从而可以避免持久化的数据占用过多内存导致频繁GC。
    MEMORY_AND_DISK_SER 基本含义同MEMORY_AND_DISK。唯一的区别是,会将RDD中的数据进行序列化,RDD的每个partition会被序列化成一个字节数组。这种方式更加节省内存,从而可以避免持久化的数据占用过多内存导致频繁GC。
    DISK_ONLY 使用未序列化的Java对象格式,将数据全部写入磁盘文件中。

    四、学习视频

    https://www.bilibili.com/video/BV1oE411s7h7?p=26

  • 相关阅读:
    docker容器中查看容器linux版本
    mac 安装docker
    音视频流处理
    激光雷达
    sick 激光
    Ubuntu 14.04 安装Docker
    W: GPG error: http://ppa.launchpad.net trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 8CF63AD3F06FC659
    rtp发送 h265
    pytorch 环境搭建
    Linux 修改文件夹的用户组权限
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/14326227.html
Copyright © 2011-2022 走看看