大数据实时计算Spark学习笔记(8)—— RDD 持久化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012292754/article/details/85321867

1 RDD 持久化

  • 跨操作进行RDD的内存式存储;
  • 持久化 RDD时,节点上的每个分区都会保存到内存中;
  • 缓存技术是迭代计算和交互式查询的重要工具;
  • 使用 persist()cache() 进行 RDD 的持久化,cache()perisit() 的一种;
  • action 第一次操作时会发生 persist()
  • spark的 cache是容错的,如果RDD的任何一个分区丢失了,都可以通过最初创建 的RDD 重新计算;
  • persist 可以使用不同的存储级别进行持久化;

1.1 删除持久化数据

  • rdd.unpersist()

2 Spark累加器,广播变量

  • 启动集群
    在这里插入图片描述
  • spark shell 连接到集群
    在这里插入图片描述

在这里插入图片描述

2.1 数据传递

  • map,filter等的高阶函数中访问的对象被串行化到各个节点。每个节点都有一份拷贝
  • 变量值并不会回传到 driver 程序

2.2 共享变量

  • spark 通过广播变量和累加器实现共享变量
    在这里插入图片描述
  • 累加器

猜你喜欢

转载自blog.csdn.net/u012292754/article/details/85321867