Spark的checkpoint源码讲解.pdf


立即下载 滔滔江水
2024-04-24
Checkpoint Spark val 关系 persist 恢复 Streaming file count checkpoint
122.7 KB

浪尖 qq 技术交流群 459898801 224209501
浪尖 qq 技术交流群 459898801 224209501
Spark 的 checkpoint源码讲解
Checkpoint相关源码分四个步部分
1,Checkpoint 的基本使用:core 和 Streaming。
2,初始化的源码。
3,Checkpoint 的 job 生成及执行的过程。
4,读 Checkpoint 的过程。
一,Checkpoint的基本使用
Checkpoint 可以还原药水。辅助 Spark 应用从故障中恢复。SparkStreaming 宕机恢复,
适合调度器有自动重试功能的。对于 SparkCore 则适合那些计算链条超级长或者计算耗时的
关键点进行 Checkpoint,便于故障恢复。
Checkpoint和 persist 从跟不上不一样:
1,Cache or persist
Cache or persist 保存了 RDD 的血统关系,假如有部分 cache 的数据丢失可以根据血缘关
系重新生成。
2,Checkpoint
会将 RDD 数据写到 hdfs 这种安全的文件系统里,并且抛弃了 RDD 血缘关系的记录。即
使 persist 存储到了磁盘里面,在 driver 停掉之后会被删除,而 checkpoint 可以被下次启动使
用。
Checkpoint基本使用
对于 SparkStreaming 任务,请参考源码例子 RecoverableNetworkWordCount
对 SparkCore:
DoCheckpoint
val sc = new SparkContext(confspark)
sc.setCheckpointDir("/test/checkpoint")
val textrdd=sc.textFile("/agent/test.txt")
textrdd.checkpoint()
val count = textrdd.count()
val file = textrdd.getCheckpointFile
println(file)
Recover
val count =
sc.checkpointFile("/test/checkpoint/7ce1511a


Checkpoint/Spark/val/关系/persist/恢复/Streaming/file/count/checkpoint/ Checkpoint/Spark/val/关系/persist/恢复/Streaming/file/count/checkpoint/
-1 条回复
登录 后才能参与评论
-->