首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在时间间隔内来自kafka主题的唯一消息

问在时间间隔内来自kafka主题的唯一消息
EN

Stack Overflow用户
提问于 2020-05-14 16:35:25
回答 2查看 146关注 0票数 0

我有一个kafka主题,其中1500条消息/秒由不同的生产者产生,每个消息有两个固定的键RID和Date,(对于每个消息,还有其他键是不同的)

有没有办法在主题中引入1分钟的延迟,并在1分钟的窗口中只使用唯一的消息。

示例-现在可能有大约90K的消息,其中可能有1000条(随机值)消息,其中RID为1,日期为2020年1月1日。

{"RID": "1" , "Date": "2020-01-01", ....}

我想在完成1分钟后只消费1000条消息中的1条(随机选择1000条中的任何一条)。

注意:该主题有3个分区。

EN

回答 2

Stack Overflow用户

发布于 2020-12-21 02:42:13

你想要的似乎是不可能的。brokers不能根据您的业务逻辑传递消息,但它们只能传递所有消息。

但是,您可以实现客户端缓存来相应地对消息进行“去重”,并且在“去重”之后只处理消息的一个子集。

票数 1
EN

Stack Overflow用户

发布于 2020-05-14 17:00:00

我不能完全肯定你的问题,但似乎你需要compaction log

它将从主题中删除最旧的消息,只需要为主题配置压缩并使用RID记录作为标识符。

希望这能对你有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61792831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档