kafka的消息存储在磁盘上,一个kafka topic分为一个或多个partition,每个partition单独存储自己的消息数据
partition将数据记录到.log文件中,为了避免文件过大影响查询效率,将文件分段处理
记录消息到.log文件中的同时,会记录消息offset和物理偏移地址的映射作为索引,提升查找性能;
这个索引并不是按消息的顺序依次记录的,而是每隔一定字节的数据记录一条索引,降低了索引文件的大小
kafka查找消息时,只需要根据文件名和offset进行二分查找,找到对应的日志分段后,查找.index文件找到物理偏移地址,然后查.log读取消息内容
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)