我有一个flink作业,它读取用户事件,使用会话窗口并写回kafka。我使用的状态后端是s3(没有hdfs集群,只使用libs)。问题是,端到端的检查点时间一直在增加,直到检查点被丢弃,而且大部分时间都花在“对齐”上。问题是-为什么?如何解决这个问题而不将检查点模式设置为至少一次?
5cnsuln71#
在进一步研究这个问题之后,这是由于gc时间很长(在检查点期间经常发生)。我们使用fs state后端,虽然名称中有fs,但它只引用检查点的输出位置,而整个状态仍然存储在内存中(与rocksdb state后端相反)。我们仍然使用fs state后端,但是,由于rocks db high(er)延迟,我们不能在这个应用程序中允许。
1条答案
按热度按时间5cnsuln71#
在进一步研究这个问题之后,这是由于gc时间很长(在检查点期间经常发生)。我们使用fs state后端,虽然名称中有fs,但它只引用检查点的输出位置,而整个状态仍然存储在内存中(与rocksdb state后端相反)。
我们仍然使用fs state后端,但是,由于rocks db high(er)延迟,我们不能在这个应用程序中允许。