0

我有T一个消息过期retention.ms设置为 2 天的主题。主题有压缩。

如果我将该消息读入 a KStream,然后进一步聚合到 a KTable,那么KStream和/或是否会KTable兑现 2 天到期?当消息不再在主题T中时,消息是否也会从主题中删除KStreamKTable自动删除?或者是否需要一些内务处理过程来墓碑这些消息?

4

1 回答 1

1

delete.retention.ms,主题的“脏比”(min.cleanable.dirty.ratio),最小/最大压缩滞后等都是控制压缩前密钥保留时间的属性

是的,流/表应该自动更新,但是您可能在更改日志主题或状态存储的其他地方存储了数据残余,因为它们存储在原始主题之外

关于第一个属性...(来自文档)

如果消费者从偏移量 0 开始以确保他们获得最终阶段的有效快照(否则可能在完成扫描之前收集删除墓碑),则给出消费者必须完成读取的时间界限。

因此,一个时间滞后小于 的流/表delete.retention.ms,那么你应该期望它正在消耗墓碑记录,如果它运行的时间超过这个时间,那么它会有可能已经被删除的数据

于 2021-08-25T12:30:08.577 回答