在前面的内容中,通过对于词条的分析,排序、压缩等处理后,词条ENTRY目前是按照每个metaID一个LOCATION的结构进行存放。从本节开始,逐渐阐述索引文件的写入过程。
2.6索引文件写入过程
索引文件的写入主要是分为写入头部header过程和词条信息过程两部分。
2.6.1 write_header头部写入过程
先通过DB_InitWriteHeader_Native将header内容开始的文件偏移地址存放到DB->offsets[HEADERPOS]中。
注:
在查询的时候,先读取header,word信息等的文件偏移地址,然后再读取相关内容。
然后写入INDEXHEADER_ID、INDEXVERSION_ID、NAMEHEADER_ID等信息,写入的基本方式为:
ID,ID字符串长度,ID字符串。最后写入一个0作为header的结束。
2.6.2 write_index过程
基本框架为: