Index索引文件

Posted lccsblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Index索引文件相关的知识,希望对你有一定的参考价值。

 

技术图片

 

 

 

1.IndexHeader头部,40字节,记录IndexFile的统计信息:

begainTimestamp:该索引文件中包含消息的最小存储时间

endTimestamp:该索引文件中包含消息的最大存储时间

begainPhyoffset:该索引文件中包含消息的最大物理偏移量(commitlog文件偏移量)

endPhyoffset:该索引文件中包含消息的最大物理偏移量(commitlog文件偏移量)

hashslotCount:hashslot个数,并不是hash槽的个数,在这里意义不大

indexCount:Index条目列表当前已使用的个数,Index条目在Index条目列表中按顺序存储

2.Hash槽,一个IndexFile默认包含500万个Hash槽,每个Hash槽存储的是落在该Hash槽的hashcode最新的Index的索引

3.Index条目列表:默认一个索引文件包含2000万个条目,每一个Index条目结构如下

hashcode:key的hashcode

phyoffset:消息对应的物理偏移量

timedif:该消息存储时间与第一条消息的时间戳的差值,小于0该消息无效

preIndexNo:该条目的前一条记录的Index索引,当出现hash冲突时,构建的链表结构

关键:map<String消息索引key,long 消息物理偏移量>

IndexFile#putKey

 

 

技术图片

 

 

 

技术图片

 

 

 

技术图片

技术图片

 

 

 

技术图片

 

以上是关于Index索引文件的主要内容,如果未能解决你的问题,请参考以下文章

显示文本“索引”而不是我的 index.html 文件的内容

webstorm 很卡 scanning files to index (扫描文件索引)

Visual Studio Code不再解析隐式索引文件?

无限循环旧索引文件旧WP安装到新

04 pandas DataFrame_创建、文件读取、编码

mongodb index 的background 及集群的索引建立