我正在使用gregationFunction在10分钟的时间窗口内指望唯一对象。 我想为窗口功能启用检查点,以防万一工作失败,我们不会丢失任何累积状态。 我一直在阅读,包括这个post (very helpful)。但是我还是不太明白如何利用ProcessWindowFunction来保留一些状态变量,这样当我的工作中断并重新启动时,我不会丢失任何累积的数据吗?
答案 0 :(得分:0)
在您描述的情况下,您无需执行任何操作。所有需要检查点的状态已经由Flink管理。
如果需要存储结果,则可以使用其他文章中描述的全局状态,以便在以后处理窗口时可以引用它们。但是对于您而言,它听起来像是一个10分钟窗口的结果,而不取决于早期窗口的结果。
如果您想亲身体验Flink的容错功能是如何工作的,可以使用基于docker的游乐场,它可以轻松地进行一些实验并直接观察发生的情况:请参阅Flink Operations Playground。涉及的应用程序会进行窗口化,因此您应该发现它非常相关。