如果我为flink检查点配置了本地文件系统,会发生什么?

fcy6dtqo  于 2021-06-24  发布在  Flink
关注(0)|答案(1)|浏览(532)

我看过一个叫 Managing State in Apache Flink - Tzu-Li (Gordon) Tai . 在这个视频中,它用分布式文件系统存储数据。
我想知道如果我为flink检查点配置本地文件系统会发生什么?
如:

env.setStateBackend(new RocksDBStateBackend(getString("flie:///tmp/checkpoints"), true));

我假设flink集群的每个节点都会保留自己的数据。这样行吗?

ua4mk5z4

ua4mk5z41#

我假设flink集群的每个节点都会保留自己的数据。
这是正确的。
这样行吗?
使用本地文件系统和分布式节点,您可能可以很好地进行检查点检查(即使这并不确定,因为目录可能是由 JobManager 所以 TaskManager 示例可能会在目录不存在的情况下失败),但是您将无法还原,因为 JobManager 读取并根据需要分发给操作员。
严格地说,文件系统是本地的还是分布式的并不重要 flink . 重要的是 JobManager 因为还原时间可以看到所有的检查点数据。如果在同一台机器上运行所有文件,那么本地文件系统就可以正常工作。
我认为原则上,您甚至可以让所有节点在本地写入数据,然后手动使用同步过程将数据移动到 JobManager 在尝试还原时可以看到它,但是这肯定不是推荐的方法。

相关问题