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端发生错误,需要恢复的情况

原文地址:https://www.cnblogs.com/langfanyun/p/8024027.html