[发明专利]实现搜索服务的方法与系统有效
| 申请号: | 200910136443.2 | 申请日: | 2009-05-08 |
| 公开(公告)号: | CN101546342A | 公开(公告)日: | 2009-09-30 |
| 发明(设计)人: | 杨含飞 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 | 代理人: | 郭润湘 |
| 地址: | 英属开曼群*** | 国省代码: | 开曼群岛;KY |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 实现 搜索 服务 方法 系统 | ||
技术领域
本申请涉及计算机技术领域,特别地涉及一种实现搜索服务的方法与系统。
背景技术
随着信息技术的发展,各种应用场合中的信息量也在急速增加,为了帮助人们从海量的信息中找到自身所需信息,目前出现了一些搜索服务,能够根据用户提供的关键字或对搜索目标的描述信息,从数据源中进行全文搜索并将搜索到的数据提供给用户。
在实现搜索服务时,需要将数据源中的数据转化为索引并保存起来,这个过程通常称作索引的写入。索引是按一定规则整理的数据,因为用户在搜索时通常给出文本格式的关键字,所以相应地索引也通常为文本格式,以实现按关键字进行全文搜索,有些搜索引擎中,索引的内容包含在搜索引擎提供的网页快照中。索引包含了有关数据源中的各种信息,对于数据源中的文本,索引可以包含这些文本,对于数据源中的图像文件以及音频、视频等非文本格式的文件,在索引中可以保存这些文件的来源的字段,例如它们在互联网上的地址字段。索引的写入工作通常由索引服务器完成。当用户进行搜索时,由搜索服务器接收用户给出的搜索条件,然后根据该搜索条件确定用户所需数据保存在哪个索引中,再从该索引中进一步进行查找,查找到保存的索引之后将其中的信息提供给用户。
为了将大量数据转化为索引,通常会使用多个索引服务器进行索引写入工作。索引服务器按一定次序提取数据,例如按时间顺序提取邮件,或者按序号提取数据库记录中的条目,在提取之后标记被提取数据为“已提取”,在这种情况下对于相同的数据,可能会被不同的索引服务器同时提取并写到不同的索引中从而造成索引写入的共享冲突。
另外,对于已经形成的索引,如果其容量较大,例如字节数超过1G,则从索引中进一步查找所需内容的时间较长,从而降低了搜索效率。另一方面,如果索引容量过小,则在搜索时需打开多个索引,也会降低搜索效率。
因此在目前的搜索服务中存在索引写入共享冲突以及搜索效率较低的问题,需要新的方法来实现搜索服务。
发明内容
本申请的主要目的是提供一种实现搜索服务的方法与系统,以解决现有技术中索引写入共享冲突以及搜索效率较低的问题。
为解决上述问题,本申请提供如下的技术方案:
一种实现搜索服务的方法,其特征在于,包括:
根据预设的数据分类方式划分数据源中的数据,在划分得到的每类数据与预设的索引之间建立对应关系,所述预设的索引中,单个索引的最大容量预先设定,并根据所述数据源的容量和预先设定的单个索引的最大容量确定所述预设的索引的份数;所述在划分得到的每类数据与预设的索引之间建立对应关系包括步骤:将所述预设的索引按正整数连续编号;针对划分得到的每类数据,向该类数据分配唯一的整数值,将该整数值除以所述预设的索引的份数然后取余数,在该类数据与编号为所述余数的索引之间建立对应关系;
根据所述对应关系将每类数据写入该类数据对应的索引中;
当接收到搜索指令时,根据收到的搜索指令确定索引,根据确定的索引输出数据。
所述按所述对应关系将数据写入该类数据对应的索引中包括:
将所述一类数据分配到一个索引写入装置;
索引写入装置根据每类数据,按所述对应关系将数据写入该类数据对应的索引中。
一种实现搜索服务的系统,包括:
划分模块,用于根据预设的数据分类方式划分数据源中的数据,并保存划分得到的每类数据与预设的索引之间的对应关系;
索引写入模块,在所述系统中设有一个或多个,用于根据所述对应关系,将每类数据写入该类数据对应的索引中;
索引存储模块,用于保存索引;
所述划分模块包括:
索引份数确定单元,用于根据所述数据源的容量和预先设定的单个索引的容量确定所述预设的索引的份数;
索引编号单元,用于将所述预设的索引按正整数连续编号;
划分单元,用于根据预设的数据分类方式划分数据源中的数据;
特征值分配单元,用于针对划分单元划分得到的每类数据,向该类数据分配唯一的整数值;
索引对应单元,用于针对划分单元划分得到的每类数据,将该类数据分配得到的整数值除以所述预设的索引的份数然后取余数,在该类数据与编号为所述余数的索引之间建立对应关系。
所述系统进一步包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910136443.2/2.html,转载请声明来源钻瓜专利网。





