Flink:有关flink检查点和保存点的查询

时间:2020-02-28 04:48:23

标签: apache-flink flink-streaming

以下是我对Flink的查询。

  1. 我们可以将检查点和保存点存储到外部数据结构(如RockDB等)中,还是可以存储在RockDB等中的状态。
  2. 状态后端是否会影响检查点?如果是,以什么方式?
  3. 什么是StateProcessor API?它与我们存储的保存点和检查点直接相关吗?什么 StateProcessor API可以带来普通保存点无法提供的额外好处吗?

对于3个问题,请尽可能以描述性的方式回答。我对学习StateProcessor API感兴趣,但是我想深入了解它的应用,以及在什么情况下它是必不可少的。

1 个答案:

答案 0 :(得分:1)

  1. 检查点和保存点只能写入满足Flink filesystem abstraction要求的存储中。您想使用具有持久性和冗余性的产品,例如S3或HDFS。不支持将RocksDB用作检查点或保存点的数据存储。

  2. 状态后端涉及检查点,并且检查点以特定于状态后端的格式编写。关于检查点,基于堆的状态和基于rocksdb的状态后端之间最显着的区别在于,只有RocksDB状态后端支持增量检查点。

  3. 状态处理器API允许您编写可以读取和写入保存点(和外部化的检查点)的应用程序。举几个例子,这对于检查应用程序的状态以进行分析或调试,执行状态迁移以及引导新应用程序的状态非常有用。