kafka文件存储机制
前言
我们知道,生产者发送给kafka的数据肯定是需要存储的,存储意味着数据落盘,但是这个数据存储的结构是怎样的呢?
不妨先来了解下kafka文件存储机制
- Topic是逻辑上的概念,而partition是物理上的概念,每个partition对应于一个log文件,该log文件中存储的就是Producer生产的数据;
- Producer生产的数据会被不断追加到该log文件末端,为防止log文件过大导致数据定位效率低下,Kafka采取了分片和索引机制,将每个partition分为多个segment;
- 每个segment包括:“.index”文件、“.log”文件和.timeindex等文件。这些文件位于一个文件夹下,该文件夹的命名规则为:topic名称+分区序号,例如:first-0;
总体的文件结构如下图所示:
对上面的文件结构再做几点补充说明:
- 一个partition分为多个segment
- .log 日志文件 .index 偏移量
作者:逆风飞翔的小叔
来源链接:https://blog.csdn.net/congge_study/article/details/123310936