Apache flink 任务管理器失败后Flink RocksDB的行为

Apache flink 任务管理器失败后Flink RocksDB的行为,apache-flink,rocksdb,Apache Flink,Rocksdb,我正在试验我的新Flink集群(3台不同的机器->1台作业管理器,2台->任务管理器),使用RocksDB作为状态后端,但是我得到的检查点行为有点混乱 更具体地说,我设计了一个简单的WordCount示例,数据源是netcat。当我提交作业时,作业管理器将其分配给随机任务管理器(也没有复制)。我提供了一些单词,然后杀死了当前正在运行的任务管理器。过了一会儿,作业在另一个任务管理器中重新启动,我可以提供一些生词。令人困惑的是,第一个任务管理器的状态即使在我杀死它时也会被保留 据我所知,RocksD

我正在试验我的新Flink集群(3台不同的机器->1台作业管理器,2台->任务管理器),使用RocksDB作为状态后端,但是我得到的检查点行为有点混乱

更具体地说,我设计了一个简单的WordCount示例,数据源是netcat。当我提交作业时,作业管理器将其分配给随机任务管理器(也没有复制)。我提供了一些单词,然后杀死了当前正在运行的任务管理器。过了一会儿,作业在另一个任务管理器中重新启动,我可以提供一些生词。令人困惑的是,第一个任务管理器的状态即使在我杀死它时也会被保留

据我所知,RocksDB在运行的任务管理器的本地目录中维护其状态,因此我所期望的是,当第一个任务管理器被杀死时,会丢失整个状态并开始从一开始计算单词。所以Flink似乎以某种方式在内存中保持其状态(?)或者通过JobManager广播它


我遗漏了什么吗?

RocksDB状态后端确实在每个任务管理器的本地磁盘上保持其工作状态,而检查点通常存储在分布式文件系统中


如果启用了检查点,则备用任务管理器可以从最新的检查点恢复状态并继续处理。

需要更多详细信息。列出您正在运行的命令、希望看到的内容以及实际看到的内容。