我有一个包含多个生产者和消费者的kafka应用程序,在其中我为一个主题生成记录,一段时间后,我使用同一主题中的一组记录(例如5条记录),然后我需要获取最后一条记录对于来自第二个主题的给定键,请使用来自第一个主题的新5条记录对其进行更新,并再次向第二个主题生成更新后的值。
要执行此操作,我需要从头开始寻找第二个主题分区,找到为给定键生成的最后一条记录,并将偏移量提交到末尾,然后在进行更新后再次将新记录生成到同一个分区相同的键。那是正确的事吗?当多个用户同时更新同一密钥的记录时,将使用该应用程序。
我也阅读了压缩主题,但是对压缩的含义不太了解,压缩可以只保存键的最后一条记录,并在生成新记录时立即删除所有以前的记录(因此,我只能保留最后一条记录)记录每个密钥,因为我不需要其他记录),您能否建议我构造应用程序的最佳方式是什么?