6.RDD的持久化和检查点

RDD的持久化和检查点

RDD的持久化

RDD可以通过persist方法或chche方法将前面的计算结果缓存到内存中,默认情况下presist()会将数据以序列化的形式缓存在JVM的堆空间之中。presist可以传入StorageLevel.的属性 配置OFF_HEAP有利于立即回收内存。

使用缓存持久化时不会删除血缘关系,父RDD的血缘关系还存在

RDD的检查点

Spark 中对于数据的保存除了持久化操作之外,还提供了一种检查点的机制,检查点(本质是通过将RDD写入Disk做检查点)是为了通过 Lineage 做容错的辅助

Lineage 过长会造成容错成本过高,这样就不如在中间阶段做检查点容错,如果之后有节点出现问题而丢失分区,从做检查点的 RDD 开始重做 Lineage,就会减少开销。检查点通过将数据写入到 HDFS 文件系统实现了 RDD 的检查点功能。

配置CheckPoint需要提前sc.setCheckPointDir()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值