kafka常用目录文件解析

文章目录

本章内容主要介绍kafka内的一些重要目录和文件,并解释其中的存储的内容和作用

1、消息日志文件(.log)

路径:/tmp/kafka/broker2/data/

根据上图解释,如果当前创建一个主题叫stream-topic1,则会创建三个(配置分片数)主题目录stream-topic1-0、stream-topic1-1、stream-topic1-2,进入其中一个目录stream-topic1-0,里面名字相同的.log、.index和.timeindex文件就是Segment

2、消费者偏移量文件(__consumer_offsets)

路径:/tmp/kafka/broker2/data

作用:在kafka的broke/data下存在50个__consumer_offsets文件,这些文件和普通的 topic 相同。它们作用之一就是保存 consumer 提交的位移

3、偏移量索引文件(.index)

路径:/tmp/kafka/broker2/data/stream-topic1-2

作用:与 .log 文件对应,用于快速定位某个偏移量的消息在 .log 文件中的位置

4、时间索引文件( .timeindex)

路径:/tmp/kafka/broker2/data/stream-topic1-2

作用:基于消息时间戳的索引,允许根据时间范围快速检索消息。

5、检查点引文件( .checkpoint)

路径:/tmp/kafka/broker2/data

在这个路径下可以看到有几个checkpoint文件

作用:发生故障时,Kafka 可以从检查点恢复处理,确保一致性。

  • replication-offset-checkpoint:已经确认复制给其他副本的offset,也就是HW
  • recovery-point-offset-checkpoint:负责记录topic已经被写入磁盘的offset
  • cleaner-offset-checkpoint:存了每个log的最后清理offset
  • log-start-offset-checkpoint:文件对应logStartOffset,用来标识日志的起始偏移量

6、事务日志文件(.transaction.log)

路径:.transaction.log文件通常位于Kafka安装目录下的log.dirs指定的目录中

作用:记录事务的提交或回滚状态,确保事务消息的一致性和可靠性

7、配置文件(server.properties)

路径:容器内 /opt/kafka/config

powershell 复制代码
#每个Kafka节点必须有唯一的标识符
broker.id=1 
#指定Kafka消息存储的目录
log.dirs=/kafka/data
#设置Kafka服务的监听地址及端口
listeners=PLAINTEXT://:9092
#指定默认的分区数量,分区越多,Kafka的并行处理能力越强
num.partitions=1
num.recovery.threads.per.data.dir=1

offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1

#设置日志保留的时间
log.retention.hours=168
#当内容文件达到这个配置的字节数大小时,消息存储的内容文件就会分隔,新增一个内容文件(.log  .index  .timeindex)来存储内容
log.segment.bytes=1073741824
#清理器检查日志符合被删除条件的轮询时间
log.retention.check.interval.ms=300000
相关推荐
codingandsleeping13 分钟前
浏览器的缓存机制
前端·后端
self-discipline6341 小时前
【Java】Java核心知识点与相应面试技巧(七)——类与对象(二)
java·开发语言·面试
潘多编程1 小时前
SpringBoot分布式项目订单管理实战:Mybatis最佳实践全解
spring boot·分布式·mybatis
wei3872452321 小时前
java笔记02
java·开发语言·笔记
追逐时光者1 小时前
面试官问:你知道 C# 单例模式有哪几种常用的实现方式?
后端·.net
Asthenia04121 小时前
Numpy:数组生成/modf/sum/输出格式规则
后端
zjj5871 小时前
Docker使用ubuntu
java·docker·eureka
士别三日&&当刮目相看1 小时前
JAVA学习*简单的代理模式
java·学习·代理模式
Asthenia04121 小时前
NumPy:数组加法/数组比较/数组重塑/数组切片
后端
Asthenia04122 小时前
Numpy:limspace/arange/数组基本属性分析
后端