繁体   English   中英

如何查询 kafka 以获取主题中给定键的最新消息的最新偏移量/分区/时间戳

[英]How to Query kafka for latest offset / partition /timestamp for latest message for given key in a topic

如何查询 kafka 并获取给定主题和消息键的最新消息的时间戳/偏移量/分区?

我们的应用程序在 golang 和 java 中。 但是,欢迎任何解决方案。 提前致谢。

消费者不能过滤或只接收来自主题的一些消息。 消费者将按顺序获取消息。

充其量我们可以应用一些过滤器来确定特定的分区。 但是在该分区内,您必须出队才能获得坐标

如果您正在寻找特定的密钥,则必须使消息出列,然后在客户端应用过滤器。 对于 ConsumerRecord,您可以获取偏移量、分区等。

一个标准的方法是让消费者在表中写入消息的键和坐标,这也是您可能想要考虑的事情。

除非您构建 KTable 并在 Kafka Streams / KsqlDB 中使用交互式查询,否则您无法通过键查询 Kafka。

否则,您可以为主题的键计算分区,并使用 Kafka 二进制文件中包含的GetOffsetShell java CLI 工具获取该分区的最新偏移量,或者在将消费者分配给该分区后通过代码在那里seek消费者。

如果您需要从 kafka 频繁查找键,最好将数据消费到实际的键值存储或数据库中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM