我是靠谱客的博主 沉静小蜜蜂,最近开发中收集的这篇文章主要介绍kafka实战(二):kafka读取偏移量主题信息(__consumer_offsets),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Kafka 的新版本已经支持将 group 组的偏移量信息存储在 kafka 中,而且由于之前存储在 zookeeper 中,而 zookeeper 并不适合大批量的频繁写入操作,官网也是建议使用 kafka 来进 行存储。
那么问题来了,我们要怎样查看在 kafka 中的 metadata 信息呢?

Metadata 是以 topic 的形式存储在 kafka 中的,topic 名为:__consumer_offsets。并且也提供 了 kafka_consumer_groups.sh 脚本来帮助我们查看偏移量情况。但这还是不满足我们的需求, 我们可能需要查看__consumer_offsets 中的所有信息和信息结构,这里我们介绍如何查看 __consumer_offsets 中的信息。

查看__consumer_offsets 中的所有信息
需要在 consumer.properties 中设置 exclude.internal.topics=false

bin/kafka-console-consumer.sh --topic __consumer_offsets --zookeeper localhost:2181 -- formatter "kafka.coordinator.GroupMetadataManager$OffsetsMessageFormatter" -- consumer.config config/consumer.properties --from-beginning

查看某个 group 在__consumer_offsets 的信息:
1. 计算要查询的 groupID 在__consumer_offsets 中所在的分区,对应的分区 =Math.abs("gropuID".hashCode()) % 50
2. 获取信息
 

bin/kafka-simple-consumer-shell.sh --topic __consumer_offsets --partition 指定分区 --broker-list localhost:9092 --formatter "kafka.coordinator.GroupMetadataManager$OffsetsMessageFormatter" 

可以看到__consumer_offsets topic 的每一日志项的格式都是:
[Group, Topic, Partition]::[OffsetMetadata[Offset, Metadata], CommitTime, ExpirationTime]

 

---
更多文章关注公众号

更多:kafka深入理解专栏

——————————————————————————————————

作者:桃花惜春风

转载请标明出处,原文地址:  

https://blog.csdn.net/xiaoyu_BD/article/details/81782418

如果感觉本文对您有帮助,请留下您的赞,您的支持是我坚持写作最大的动力,谢谢!

最后

以上就是沉静小蜜蜂为你收集整理的kafka实战(二):kafka读取偏移量主题信息(__consumer_offsets)的全部内容,希望文章能够帮你解决kafka实战(二):kafka读取偏移量主题信息(__consumer_offsets)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部