Spark 中的 checkpoint

为了实现容错,需要做checkpoint。以Streaming为例,checkpoint中有两种数据:

1. Metadata checkpointing:用于恢复driver端出错的情况。其中包含:

   (1) Configuration  用于创建Streaming应用所需要的配置信息

   (2)DStream Operations:Streaming应用中定义的所有操作

   (3)Imcomplete Batches:已经排队的,但是尚未完成的batch

2. Data checkpointing:保存生成的RDD,主要用于一些有状态的transfermation操作。比如新的RDD需要上一批次的RDD的结果。

 

由此我们可以得出以下情况需要进行checkpoint

1. 用到有状态的transformation时,如:updateStateByKey,reduceByKeyAndWindow

2. driver端发生错误,需要恢复的情况

posted @ 2017-12-12 15:41  一剑侵心  阅读(372)  评论(0编辑  收藏  举报