[发明专利]数据的索引方法以及装置有效
| 申请号: | 201710041318.8 | 申请日: | 2017-01-20 |
| 公开(公告)号: | CN108334514B | 公开(公告)日: | 2020-11-03 |
| 发明(设计)人: | 肖智鹏;张磊;李学文 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/178;G06F16/16;G06F12/02;G06Q30/02 |
| 代理公司: | 中国贸促会专利商标事务所有限公司 11038 | 代理人: | 许蓓 |
| 地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 索引 方法 以及 装置 | ||
1.一种数据的索引方法,其特征在于,包括:
索引线程实时获取增量数据,所述增量数据包括增加的数据或删除的数据;
所述索引线程根据所述增量数据包含的关键词获取对应的key,根据对应的键key获取倒排索引中所述key对应的原倒排拉链;
所述索引线程根据所述增量数据以及所述原倒排拉链中的数据生成临时倒排拉链;
所述索引线程利用所述临时倒排拉链替换所述原倒排拉链来更新所述倒排索引,为原倒排拉链的内存空间添加延迟回收标识并打上第二时间戳,所述索引线程每隔预设时间从时间队列中获取最小的第一时间戳,并将所述最小的第一时间戳与带有延迟回收标识的内存空间的第二时间戳进行比对;其中,与所述索引线程并行执行的检索线程在接收用户的检索请求后,在时间队列中生成第一时间戳,并在所述检索请求完成检索后,删除对应的第一时间戳;
如果所述带有延迟回收标识的内存空间的第二时间戳小于所述最小的第一时间戳,所述索引线程则将所述带有延迟回收标识的内存空间回收;
所述索引线程利用更新后的倒排索引提供检索服务。
2.根据权利要求1所述的方法,其特征在于,
所述根据所述增量数据以及所述原倒排拉链中的数据生成临时倒排拉链包括:
当所述增量数据为增加的数据时,复制所述原倒排拉链,并在所述复制的原倒排拉链中添加所述增加的数据,以生成临时倒排拉链;
或者,
当所述增量数据为删除的数据时,复制所述原倒排拉链,并在所述复制的原倒排拉链中删除所述删除的数据,以生成临时倒排拉链。
3.根据权利要求1所述的方法,其特征在于,还包括:
如果所述原倒排拉链的带有延迟回收标识的内存空间的第二时间戳大于或等于所述最小的第一时间戳,则不回收所述带有延迟回收标识的内存空间,使得正在使用所述原倒排拉链进行检索的所述检索线程,在所述原倒排拉链被替换后,仍然到所述原倒排拉链的带有延迟回收标识的内存空间中读取数据进行检索。
4.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
周期性的将更新后的倒排索引文件发送至云存储系统更新已存储的倒排索引文件;
在内存中实时将更新后的倒排索引文件进行备份。
5.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
从云存储系统中获取已存储的全量数据的文件;
根据所述全量数据生成倒排索引文件;
将所述倒排索引文件发送至所述云存储系统进行存储;
启动时从所述云存储系统获取所述倒排索引文件保存至内存中。
6.一种数据的索引装置,其特征在于,包括:
增量数据获取模块,用于实时获取增量数据,所述增量数据包括增加的数据或删除的数据;
原倒排拉链获取模块,用于根据所述增量数据对应的键key获取倒排索引中所述key对应的原倒排拉链;
临时倒排拉链生成模块,用于根据所述增量数据以及所述原倒排拉链中的数据生成临时倒排拉链;
倒排索引更新模块,用于利用所述临时倒排拉链替换所述原倒排拉链来更新所述倒排索引,利用更新后的倒排索引提供检索服务;
延迟回收模块包括:检索线程执行单元,时间队列单元,索引线程执行单元;
索引线程执行单元用于在在所述倒排索引更新模块利用所述临时倒排拉链替换所述原倒排拉链时,为所述原倒排拉链的内存空间添加延迟回收标识的同时为所述原倒排拉链的内存空间打上第二时间戳,每隔预设时间从时间队列中获取最小的第一时间戳,并将所述最小的第一时间戳与带有延迟回收标识的内存空间的第二时间戳进行比对,如果所述带有延迟回收标识的内存空间的第二时间戳小于所述最小的第一时间戳,则将所述带有延迟回收标识的内存空间回收;
检索线程执行单元用于接收用户的检索请求,查找对应的倒排拉链进行检索;
时间队列单元用于在检索线程执行单元接收用户的检索请求后,在时间队列中生成第一时间戳,并在所述检索请求完成检索后,删除对应的第一时间戳;
其中,所述索引线程执行单元与所述检索线程执行单元并行执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710041318.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种SaaS架构的服装生产管理系统
- 下一篇:信息推送方法和装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





