gpt4 book ai didi

apache-kafka - 卡法 : How does Kafka stores and retrieves offset for each consumer-group?

转载 作者:行者123 更新时间:2023-12-05 03:56:56 31 4
gpt4 key购买 nike

我并不是在寻找 API 来完成这个内部实现细节。

我知道最新版本的 Kafka 在一个特殊的 Kafka 主题中存储消费者组的偏移量__consumer_offset。

我的问题是:

这个主题中的数据结构到底是什么?

当一个消费者组死亡并出现时,Kafka 如何查找 Topic-Partitions 中该消费者组上次消费到的偏移量?

据我了解,Kafka 主题不适合查找数据:例如:查询如下:

从 __consumer_offset 中选择 *offset* where consumer-group-name=*consumer-group* and topic=*topic-1*

基本上,我想知道 __consumer_offset 的内部细节或用于消费者偏移量管理的任何内容。

我阅读了这个维基页面 https://cwiki.apache.org/confluence/display/KAFKA/Offset+Management , 但无法理解内存中的数据结构部分。

最佳答案

每个消费者组都根据它的哈希在 __consumer_offsets 主题中分配一个特定的分区。

然后,偏移量将作为消息简单地写入 __consumer_offsets 主题。

为了防止这个主题变得太大,定期删除给定消费者组的旧偏移量。

对于读取,Kafka 代理将此数据作为启动的一部分加载到内存中,这样每个偏移量请求都不会导致磁盘 I/O。由于只有最新的偏移量会被频繁访问,因此在正常操作中,这并不意味着要在内存中保留太多数据。

关于apache-kafka - 卡法 : How does Kafka stores and retrieves offset for each consumer-group?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58854812/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com