【技术实现步骤摘要】
一种基于非易失存储器的倒排索引存储装置
[0001]本专利技术属于计算机
,尤其涉及一种基于非易失存储器的倒排索引存储装置。
技术介绍
[0002]随着信息时代与移动互联网的快速发展,数据迎来爆炸式增长,微博,知乎,以及各类新闻等应用每天产生了大量的非结构化文本数据。倒排索引是文本检索的底层重要结构,可以帮助人们从海量的文本数据中快速定位查询所在的文档ID,通过适当的打分方法对结果进行排序。利用倒排索引可以大大加快全文检索的效率,但倒排索引的创建却是一项极其耗时的工作,需要在遍历全部文档的同时进行分词、创建倒排表与位置信息等。
[0003]创建倒排索引耗时较长,为了避免程序的意外退出,索引创建过程中会及时将内存中的倒排索引保存在磁盘、固态硬盘等外存设备上。但外存设备的随机性能弱,目前倒排索引在查询时为了避免随机读写,会将某个词项的倒排表连续存放在一块连续的空间,这也就导致了如果整个索引不能一次落盘,同一个词项的倒排表就会被存放在多个不连续的外存空间中,增加查询延迟。
[0004]一个完整的倒排索引包括词 ...
【技术保护点】
【技术特征摘要】
1.一种基于非易失存储器的倒排索引存储装置,包括:至少一虚拟段,用以存储倒排索引的基本信息;一NVM词典,用以基于NVM词典中每一词项包含的虚拟段动态地址数组,维护各虚拟段中的所述基本信息;其中,所述词项与倒排索引基本信息通过对文档分词,并于内存中建立倒排索引后获取,所述倒排基本信息包括:倒排记录表、词位置信息和跳表。2.如权利要求1所述的倒排索引存储装置,其特征在于,所述虚拟段的结构包括:段头部、数据段和段尾,其中,所述数据段用于存储所述倒排索引的基本信息;所述段尾部包括:冗余空间和段尾标识;所述段头部包括:段标识、倒排数、数据长度、地址范围和冗余空间大小,其中,所述倒排数,用于记录当前虚拟段中所述倒排索引基本信息相应的词项数量;所述数据长度,用于记录当前虚拟段的字节数;所述地址范围,用于记录当前虚拟段在非易失存储器的缓存池中的首地址与尾地址;所述冗余空间大小,用于记录当前虚拟段中所述冗余空间的大小。3.如权利要求2所述的倒排索引存储装置,其特征在于,所述NVM词典的结构包括:词典版本、词项数、跳表跨度和词项内容,其特征在于,所述词项内容包括:PreLen,用于记录该词项与前一个词项的相同前缀位数;Suffix,用于表示词项后缀;FieldNum,用于表示该词项出现的域的数量;Count,用于表示该词项出现的总次数;DocFreq数组,用于表示该词项出现的总文档数;Skips数组,用于记录每个虚拟段中对应的跳表的地址与文档号,其中,所述跳表存储于所述数据段中;Poss数组,用于记录每个虚拟段中对应的位置信息的地址。4.一种如权利要求1
‑
3所述倒排索引存储装置中倒排索引的创建与增量更新方法,其步骤包括:对文档分词后在内存中建立倒排索引结构,所述倒排索引结构包括:词项和倒排索引的基本信息;内存中的倒排索引结构占用空间达到设定第一阈值,则在非易失存储器缓存池文件中创建虚拟段,将倒排索引的基本信息存储到虚拟段中;在内存中创建单个虚拟段对应的单段词典,并将单段词典保存到非易失...
【专利技术属性】
技术研发人员:兰鹏,李波,张金超,王伟平,
申请(专利权)人:中国科学院信息工程研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。