我有一个flink作业,它读取用户事件,使用会话窗口并写回kafka。
我使用的状态后端是s3(没有hdfs集群,只是使用了libs)。
问题是端到端检查点时间一直在上升,直到检查点被丢弃,并且大部分时间花费在"对齐"。
问题是 - 为什么?,如何在不将检查点模式设置为AT_LEAST_ONCE的情况下解决这个问题?
答案 0 :(得分:0)
在进一步研究问题之后,这是由于GC时间过长(在检查点期间经常发生)。 我们使用的是FS状态后端,虽然名称中包含FS,但它仅指检查点的输出位置,而整个状态仍存储在内存中(与rocksdb状态后端相对)。
由于rocks-db较高的延迟,我们仍在使用FS状态后端,这在此应用程序中是不允许的。