当前位置:网站首页>spark中的cache和checkpoint
spark中的cache和checkpoint
2022-08-03 05:32:00 【贾斯汀玛尔斯】
cache 缓存级别
DataFrame 的 cache 默认采用 MEMORY_AND_DISK
RDD 的 cache 默认方式采用 MEMORY_ONLY
释放缓存和缓存
缓存:(1)dataFrame.cache (2)sparkSession.catalog.cacheTable(“tableName”)
释放缓存:(1)dataFrame.unpersist (2)sparkSession.catalog.uncacheTable(“tableName”)
缓存和检查点区别
1)Cache 缓存只是将数据保存起来,不切断血缘依赖。Checkpoint 检查点切断血缘依 赖。
2)Cache 缓存的数据通常存储在磁盘、内存等地方,可靠性低。Checkpoint 的数据通 常存储在 HDFS 等容错、高可用的文件系统,可靠性高。
3)建议对 checkpoint()的 RDD 使用 Cache 缓存,这样 checkpoint 的 job 只需从 Cache 缓存中读取数据即可,否则需要再从头计算一次 RDD。
分区
1)默认采用 Hash 分区
缺点:可能导致每个分区中数据量的不均匀,极端情况下会导致某些分区拥有 RDD 的 全部数据。
2)Ranger 分区: 要求 RDD 中的 KEY 类型必须可以排序。
3)自定义分区 根据需求,自定义分区。
SparkSQL 中 RDD、DataFrame、DataSet

边栏推荐
猜你喜欢
随机推荐
mysql 数据去重的三种方式[实战]
MySQL master-slave replication
编程语言有什么
AlexNet网络详解及复现
Basic syntax of MySQL DDL and DML and DQL
QT 连续生成指定范围内不重复的随机值
ES6中 Symbol 的基础学习,迭代器和生成器的基本用法
高密度 PCB 线路板设计中的过孔知识
html+css+php+mysql实现注册+登录+修改密码(附完整代码)
ES6中 async 函数、await表达式 的基本用法
linux安装mysql
Nacos单机模式的安装与启动
JDBC从手写连接到引用DBCP和C3P0
Use of Alibaba Cloud SMS Service (create, test notes)
IPV4地址详解
CCF NOI 2022笔试题库
Chrome configuration samesite=none method
AutoInt网络详解及pytorch复现
MySQL中的行锁
一文读懂PCB品质体系认证







