[发明专利]一种数据索引库的建立方法、搜索建议生成方法和装置有效
申请号: | 201210306727.3 | 申请日: | 2012-08-24 |
公开(公告)号: | CN102831224B | 公开(公告)日: | 2018-09-04 |
发明(设计)人: | 徐旭 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 袁媛 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 索引 建立 方法 搜索 建议 生成 装置 | ||
本发明提供了一种数据索引库的建立方法、搜索建议生成方法和装置,所述建立方法包括:对所有待处理数据进行排序,形成待处理数据列表;从所述待处理数据列表中逐一读取数据作为当前数据,确定所述当前数据记录的前缀片段的偏移量,从当前数据所记录的偏移量开始,逐次增加字符数地获取所述当前数据的前缀片段,利用每次获取的当前前缀片段,从所述待处理数据列表中获取所有具有相同前缀片段的数据,建立键值为所述当前前缀片段的索引,直至获取完所述当前数据的所有前缀片段,建立键值为对应前缀片段的索引。相较于现有技术,本发明能够降低建库时的内存使用量,减少I/O读写操作,降低了数据索引库的建库时间,提高了搜索建议服务的时效性。
【技术领域】
本发明涉及互联网信息处理技术领域,特别涉及一种数据索引库的建立方法、搜索建议生成方法和装置。
【背景技术】
索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息,可以实现大量数据的存储和检索。一般来说,一条索引(或称为一条索引拉链)的结构主要包括索引的键值(key)和索引数据。索引结构的好坏会直接影响搜索引擎的检索速度,搜索引擎根据用户输入的关键词,在索引库中查找出与该些关键词相匹配的索引键值,并提取对应的索引数据作为相关搜索结果返回给用户。
现有的搜索引擎(如地图搜索、网页搜索等等)已经发展到智能化及个性化的阶段,通常在用户输入查询词时,搜索引擎会智能地猜测用户的搜索需求,提供相关的搜索建议(suggestion)供给用户做选择,提供便捷的服务,缩短用户输入用时,同时可在用户输入错误信息时提供正确的信息予以纠正,可带来很好的用户体验。在提供搜索建议时,大多也是采用索引结构的方式,将键值能与用户输入的查询词相匹配的索引数据作为搜索建议提供给用户。
目前的地图搜索建议索引库通常采用哈希(hash)方式进行,将地图兴趣点(pointofinterest,POI)数据的前缀片段作为索引拉链的键值,插入到哈希字典中,当发现有相同的前缀片段时,会到该哈希字典中查找对应的键值,然后找到索引拉链,将此兴趣点数据的信息加到这条索引拉链上,这样持续查找完成索引建库过程。
然而,由于这种采用哈希字典查找的建库方式,在每一次有新的数据需要插入时,都要将哈希字典中的所有数据存放于机器内存中。当地图数据量较大,无法将全部数据存放于机器内存中时,只能将数据存放在硬盘上来进行建库,这样,势必会存在较频繁的I/O读写操作,从而导致建库速度很慢,响应速度随着索引规模的扩大而逐渐下降,降低了搜索建议服务的时效性。
【发明内容】
有鉴于此,本发明提供了一种数据索引库的建立方法、搜索建议生成方法和装置,能够降低建库时的内存使用量,减少I/O读写操作,降低了数据索引库的建库时间,提高了搜索建议服务的时效性。
具体技术方案如下:
一种数据索引库的建立方法,该方法包括:
对所有待处理数据进行排序,形成待处理数据列表,对所述待处理数据列表中的数据分别执行以下步骤:
S1、从所述待处理数据列表中读取一条数据作为当前数据,确定所述当前数据记录的前缀片段的偏移量;
S2、从所述当前数据所记录的偏移量开始,逐次增加字符数地获取所述当前数据的前缀片段,利用每次获取的当前前缀片段,从所述待处理数据列表中获取所有具有相同前缀片段的数据,建立键值为所述当前前缀片段的索引,并记录该些数据具有相同前缀片段的偏移量;重复本步骤直到获取完所述当前数据的所有前缀片段。
根据本发明一优选实施例,所述对所有待处理数据进行排序按照数据名称的字母或数字顺序。
根据本发明一优选实施例,所述从待处理数据列表中读取一条数据作为当前数据,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210306727.3/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置