我的Kstreams使用者在/tmp/kafka-streams/
下存储了一些检查点信息。在我们的情况下,该文件夹的填充速度非常快。我的kstream基本上在3秒的窗口中消耗了1kb的消息,并根据密钥对它们进行了重复分布。我正在寻找有关如何定期清除此数据的建议,以使磁盘在保留哪些文件或不保留哪些文件方面不占空间?
答案 0 :(得分:1)
如果您使用窗口聚集,默认情况下会使用1天的保留时间,以便正确处理乱序数据。这意味着将存储最近24小时(或实际上最多36小时)的所有窗口。
您可以尝试减少保留时间以存储较短的历史记录:
async fetch ({ params, store }) {
await store.dispatch('card/getCard', params.card)
}
.aggregate(..., Materialized.as(null).withRetentionTime(...));
之前的版本):2.1.0
(或TimeWindows#until(...)
)