我在table
的{{1}}中创建了一个ksql
。将一组数据推送到主题并填充表格。发表了一个查询,也得到了回应。我已经第二次将相同的数据推入kafka topic
中,并且再次加载topic
。现在,当我查询时,响应是2行而不是1行,带有2个不同的table
时间戳。
我相信ROWTIME
应该覆盖相同的ksql table
值并保留最新值。但这没有发生。我的理解正确吗?
对于key
,应该如何做才能保持最新值并丢弃插入/更新同一键上的先前值?
谢谢
答案 0 :(得分:0)
据我所知,不可能应用日志压缩策略来使每个密钥准确保持一条消息。即使您设置了cleanup.policy=compact
(主题级别)或log.cleanup.policy=compact
(全局级别),也无法保证仅保留最新消息,而压缩较旧的消息。
根据official Kafka documentation:
日志压缩为我们提供了更精细的保留机制,因此我们 确保至少每个主键保留最后一次更新