Topic 是逻辑上的概念,而partition是物理上的概念, 每个 partition 对应一个log文件,该log文件中存储的就是producer生产的数据。
Producer生产的数据会被不断追加到该log文件夹的末端,为了防止log文件过大而导致数据查询效率低下,Kafka采取了分片和索引机制,将每个partition分为多个segment.
每个segment包括: “.index”文件和 “.log”文件及.timeindex 等文件。这些文件位于一个文件夹下,该文件夹的命名规则为:
topic名称+分区序号,例如: first-0
查看日志命令
/Users/songjuzhi/kafka/kafka_2.13-3.4.0/bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files 00000000000000000000.log
/Users/songjuzhi/kafka/kafka_2.13-3.4.0/bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files 00000000000000000000.index