Kafka: LogManager

本文深入探讨了Kafka的LogManager及其组件,包括Partition Log的逻辑和物理结构,详细介绍了append、read、deleteSegment、truncatTo和recoverLog等操作,以及Log Compaction和相关配置。LogManager在日志存储、读取和清理方面进行了优化,确保高效性能。
摘要由CSDN通过智能技术生成


 

        进入Kafka的数据,都被作为日志存储到磁盘上了,并能够在磁盘上保留一段时间,最后被清理。其中,每一个分区的日志,还具备有日志轮转功能,这个设计类似于Log4j等日志系统。此外,kafka号称性能极好,它有disk io操作,查询性能居然也很好,它是怎么做到的呢?

 想了解大数据的学习路线,想学习大数据知识以及需要免费的学习资料可以加群:784789432.欢迎你的加入。每天下午三点开直播分享基础知识,晚上20:00都会开直播给大家分享大数据项目实战。

 

1、LogManager设计之类图

在Kafka的代码里,进行日志管理的类是LogManager,它提供了对Log管理方面的操作,其中对Log的基本操作有:

createLog(TopicAndPartition partition)  // 为分区创建Log
deleteLog(TopicAndPartition partition)  // 删除某个分区

从这两个方法可以看出是Kafka对于Log的管理是基于Partition的。 

 

也就是说,在一个Kafka broker内,任何一个partition都会有一个逻辑的Log与之对应。

所以呢,上面类图中的Log类,其实就是Partition Log,在后续内容中,就将其称为Partition Log了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值