spark中checkpoint和持久化(persist/cache)有什么区别?

提问者:帅平 问题分类:大数据
spark中checkpoint和持久化(persist/cache)有什么区别?
2 个回答
理解的心
理解的心
cache或者persist的缓存如果在内存的话,容易被LRU回收,回收后再使用当前的rdd,则需要重新从链路上计算出新的rdd。
chekpoint的存储,如果存储目录一直存在的话,这里的rdd也会一直存在,也就是不会被回收。
发布于:2年前 (2022-12-08) IP属地:四川省
丶殇
丶殇
Cache和Persist 用于缓存,采用临时保存,Executor 挂掉会导致数据丢失,但是数据可以重新计算。
Checkpoint 用于截断依赖链,reliable 方式下 Executor 挂掉不会丢失数据,数据一旦丢失不可恢复。
尽管 Spark 会自动管理(包括创建和回收)cache 和 persist 持久化的数据,但是 checkpoint 持久化的数
据需由用户自己管理。checkpoint 会清除 RDD 的血统信息,避免血统过长导致序列化开销增大,而 cache
和 persist 不会清除 RDD 的血统。
发布于:2年前 (2022-12-08) IP属地:四川省
我来回答