Kafka中的日志存储
KafkaKafka的日志存储学习。
日志索引
kafka中的索引文件以稀疏索引的方式构造消息索引,不保证每个消息在索引文件中都有对应索引项,每当写入一定量的消息时,偏移量索引文件和时间戳索引文件分别增加一个索引项。
稀疏索引通过MappedByteBuffer将索引文件映射到内存中,以加快索引的查询速度。
磁盘存储
- Kafka在设计时采用文件追加的方式来写入消息,属于典型的顺序写盘操作。
- 页缓存技术
- 零拷贝,直接从磁盘文件复制到网卡设备中,不需要经过应用程序。
参考
- Apache kafka实战
- 深入理解Kafka:核心设计与实践原理