KAFKA流:如何存档具有某些TTL的数据



kafka流提供不同的持久商店,其中之一是rocksdbwindowstore。因此,如果我们设置保留时间,则如果保留时间交叉,它将删除键值对。是否提供了在删除此数据之前可以使用的回调功能?用户酶 - 我想将数据存储到分布式数据库中,然后再将其从RockSDB删除)。

没有回调。

但是,所有数据也写入Kafka的主题。因此,您可以消耗此主题以将数据存储到其他商店中。主题名称为 <application.id>-storeName-changelog

尽管没有回调,但rocksdb本质上是一个按键排序的db。因此,我使用了两家商店,一个基于时间戳的Treemap(一种Treemap),其中包含一组键和另一个基于原始键值的键。因此,我可以迭代基于时间戳的商店,然后从其他商店存档键值对,然后从两个商店中删除钥匙,这些钥匙需要在某个特定时间后进行存档。

相关内容

  • 没有找到相关文章

最新更新