阅读《分布式消息系统Kafka》第五、Kafka架构深入章节的“文件存储机制”内容
由于生产者生产的消息会不断追加到log文件末尾,为防止log文件过大导致数据定位效率低下,Kafka采@b@取了分片和索引机制,将每个partition分为多个segment。每个segment对应两个文件——“.index”文@b@件和“.log”文件。这些文件位于一个文件夹下,该文件夹的命名规则为:topic名称+分区序号。例如,@b@first这个topic有三个分区,则其对应的文件夹为first-0,first-1,first-2。
文件示例如下 - .index”文件存储大量的索引信息,“.log”文件存储大量的数据,索引文件中的元数据指向对应数据文件 中message的物理偏移地址。
00000000000000000000.index@b@00000000000000000000.log@b@00000000000028532124.index@b@00000000000028532124.log