[发明专利]一种基于分布式数据库的全文搜索引擎有效
申请号: | 201710395591.0 | 申请日: | 2017-05-31 |
公开(公告)号: | CN107229714B | 公开(公告)日: | 2020-02-14 |
发明(设计)人: | 江和慧;黄显洛 | 申请(专利权)人: | 杭州宇为科技有限公司 |
主分类号: | G06F16/93 | 分类号: | G06F16/93;G06F16/27 |
代理公司: | 33206 浙江翔隆专利事务所(普通合伙) | 代理人: | 郭关夫 |
地址: | 310026 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式数据库 单词 分表 文档表 语料库 文档 字段 全文搜索引擎 缓存 均衡 分布式功能 索引和搜索 存储介质 计算功能 扩展能力 搜索效率 查询 分词 索引 排序 搜索 返回 | ||
本发明提出一种基于分布式数据库的全文搜索引擎,包括索引和搜索,其中:索引是将文档和文档经过分词后的单词存入分布式数据库;搜索是根据用户的输入,返回包含用户输入以及经过排序的结果。本发明使用三张表(即单词表、文档表和语料库表),采用不同的均衡字段,单词表用单词id分表,文档表用文档id分表,语料库表用单词id分表,从而在查询的时候,按照单词进行查询,单词表按照单词id作为均衡字段,只需要到指定的某些节点上执行即可,其搜索效率大大地提高。使用了分布式数据库作为存储介质,可以利用其强大的缓存和sql计算功能,另外分布式数据库自身带有分布式功能,使其具有很强的扩展能力。
技术领域
本发明基于分布式数据库和全文搜索引擎领域技术领域,尤其涉及一种基于分布式数据库的全文搜索引擎。
背景技术
随着计算机和互联网的大力普及和发展,例如数千万用户每天产生亿级别的数据,迫切需要分布式的存储和全文搜索工具。目前的方案:文档和单词都是按照文档来进行分布式存储的,查询的时候是按照单词来查询的,所以需要到所有节点上查询。
发明内容
为了解决上述的技术问题,本发明的设计思路是将文档和单词分开,按照不同的策略存储,在查询的时候,只需要到单词所在的节点进行查询,即本发明的目的是提供一种能够提高搜索效率、又具有很强的扩展能力的基于分布式数据库的全文搜索引擎。
为了达到上述的目的,本发明采用了以下的技术方案:
本发明提出一种基于分布式数据库的全文搜索引擎,包括索引和搜索,其中:
索引包括下载文档、分析文档、以及将文档和文档经过分词后得到的单词存入分布式数据库;搜索是根据用户的输入,查询分布式数据库,返回包含用户输入的、按照得分进行排序的结果文档。其中:搜索引擎的绝大部分内容都没有变,变的只是存储使用了分布式数据库,所以导致索引部分和搜索部分发生了变化。
作为优选:文档id、文档内容、文档地址等存入分布式数据库中对应节点的文档表中,对文档进行分词和分析,得到单词id、单词、单词所在的文档id以及单词的频率存入到分布式数据库中对应节点的单词表中。
作为优选:文档id以及单词id是通过将文档地址的hash值以及文档分词后的每个单词的hash值转换为整数得到,然后对文档id、单词id分别对分布式数据库内的节点数取余数,得到文档对应的节点id以及单词对应的节点id。
其中:文档地址是文档的标识,并非网页内容本身,文档id是通过文档地址的hash值转换来的;单词的内容本身是单词的标识,单词的id通过单词内容本身的hash值转换来的。
作为优选:搜索的基本步骤如下:对用户的输入进行分词,得到单词和单词之间的逻辑关系,针对每个单词到对应节点的单词表中搜索;
根据单词表的文档id和单词逻辑关系计算结果文档id的集合,并且根据文档id提取文档内容;同时相同文档id内所有单词的频率逆文档频率之和构成文档的得分,文档按照得分从高到低排名;
其中:单词的频率逆文档频率为单词的频率和语料库中单词的逆文档频率相乘结果;
单词之间的逻辑关系是指与、或、非、及三种逻辑运算的任意组合。
作为优选:文档存储在分布式数据库相关节点的文档表中,单词存储在分布式数据库相关节点的单词表中,单词的逆文档频率存储在分布式数据库相关节点的语料库表中,其中:文档与单词的关系是:一份文档是由若干个单词组成,将一份文档进行分词即可得到若干个单词;其中:所谓分词是指将由若干个单词组成的一份文档分为这若干个单词。
作为优选:分布式数据库中节点的文档表基本属性包括文档id、文档地址、文档内容等,文档表的均衡字段采用文档id;分布式数据库中节点的单词表基本属性包括单词id、单词、单词所在的文档id、单词的频率,单词表的均衡字段采用单词id;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州宇为科技有限公司,未经杭州宇为科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710395591.0/2.html,转载请声明来源钻瓜专利网。