基于云的结构化数据搜索方法

文档序号:6331018阅读:292来源:国知局
专利名称:基于云的结构化数据搜索方法
技术领域
本发明涉及一种互联网的搜索方法,具体涉及一种基于云的结构化数据搜索方法。
背景技术
随着互联网内容量的增加,各类网站均拥有了大量内容。这些内容分布广泛,目前通用的搜索引擎只能收录到其中很少一部分内容,无法覆盖全面。这是由目前通用搜索的技术限制造成的。通用搜索希望覆盖尽可能广泛的内容, 内容的重要性由搜索引擎本身根据一定算法决定,并不依赖于内容源本身的重要程度。同时,因为索引系统的容量所限,通用搜索也不可能把地球上所有网站的内容全部包括。同样,通用搜索一般按照自己定义的排序方法进行排序,并预先把计算好的排序结果保存在索引中。对于拥有内容的网站本身,又不简单满足于通用的搜索引擎基于文本的搜索方式,而希望根据其数据结构提供复杂而结构化的搜索结果。这些网站希望搜索引擎可以检索到全部内容,可以按照自己的要求调整排序,并希望可以快速的适应各种变化,包括内容变化,排序变化等。

发明内容
本发明所要解决的技术问题是提供一种基于云的结构化数据搜索方法,它可以提供根据结构化数据和自定义条件的搜索结果。为解决上述技术问题,本发明基于云的结构化数据搜索方法的技术解决方案为包括以下步骤第一步,建立一个由多台计算机组成的云平台,各计算机之间通过socket连接起来;在云平台上实现集中管理和SAAS服务;各计算机上设有索引服务和检索服务;第二步,对源数据进行标注,以使数据结构化;对源数据进行标注的方法是,将数据分为多种类型,数据类型包括可被搜索且分词的;可被搜索且不分词的;不被搜索仅存储的;可做排序和范围查询的;时间;需要快速变化的。第三步,根据源数据的标注结果,建立不同类型的索引,用于搜索。建立不同类型的索引的方法是,将索引分为多种类型,索引类型包括全文索引;快速变化的数字索引;
用来存储但不参与搜索的源数据。本发明可以达到的技术效果是本发明通过建立搜索集群(云),为其他网站提供搜索服务,网站可以将结构化之后的数据通知给本服务,从而提供根据结构化数据和自定义条件的搜索结果。本发明能够为网站提供搜索功能,其优点表现在以下几方面1、基于云平台,通过SAAS方式提供服务,实现集中管理,降低运营成本和用户使用成本;2、提供结构化数据搜索,通过对数据标注,使搜索结构化,可以实现各种基于范围的搜索,并定制排序方法;3、根据不同的搜索条件输出各种形式的搜索结果,搜索结果输出为结构化文档, 可用于各种设备和平台。


下面结合具体实施方式
对本发明作进一步详细的说明图1是本发明基于云的结构化数据搜索方法的索引流程;图2是一个搜索集群结构的示意图。
具体实施例方式本发明基于云的结构化数据搜索方法,如图1、图2所示,包括以下步骤第一步,建立一个由多台计算机组成的云平台,各计算机之间通过用于描述IP地址和端口的socket (套接字)连接起来;在云平台上实现集中管理和SAAS服务;SAAS即软件运营,是基于互联网提供软件服务的软件应用模式。各计算机上设有索引服务,索引服务作为索引节点;各计算机上还设有检索服务, 检索服务作为检索节点;本发明采用多台计算机组成分布式处理集群,搜索的索引分布于集群之上,使存储和计算负载被集群分担,充分集群中所有计算机的I/O能力和计算能力,使服务可扩展。 多个这样的分布式处理集群形成云平台。在这个平台上,用SAAS的方式提供搜索服务。第二步,对源数据进行标注,以使数据结构化;为了让搜索行为具有更多的含义,对输入数据(即源数据)首先进行结构化处理, 即将数据分为以下几种类型可被搜索且分词的;可被搜索且不分词的;不被搜索仅存储的;可做排序和范围查询的;时间;需要快速变化的。以上类型涵盖了创建结构化搜索引擎所需要的类型。本发明通过对源数据的标注,获得了结构化的输入数据,使索引器获得数据字段的含义和类型,并按照类型正确建立索引,能够使搜索引擎创建索引和进行检索的时候根据类型进行,可以正确地对数字类型排序,筛选数字范围或时间范围。本发明通过对源数据的标注,将输入数据分为多种类型,能够有效地提高索引质量。一段标注过的数据如下所示<doc>〈title cy. type = “ title" >基于云的结构化数据搜索方法〈/title〉<rank cy. type =“ num “ >5</rank><typename cy. type = " store" > 专禾丨J文档 </typename>〈filename cy. type = “ untoken" >SAAS 云结构化数据搜索.doc</filename>〈date cy.type = “ date" >2010-08_01</date></doc>这段文档中,使用了 cy. type字段进行类型标注,这种标注方法是通过人工辅助进行的。也可以在建立索引的时候由系统自动判断生成,这需要定义一定规则,比如,把纯数字字段标注为数字,把符合各种日期格式的字段标记日期等。第三步,根据源数据的标注结果,建立不同类型的索引,用于搜索;将索引分为以下几种类型全文索引;全文索引是对进行文本搜索的所有文件字段建立的索引,用来根据用户输入的文本匹配所需内容;全文索引中定义数据中的字段为文本;快速变化的数字索引;快速变化的数字索引用于排序和筛选,这种索引是一个内存-硬盘映射有序索引表,从该索引表中可快速取得一段有序数据或获得数据集排序结果。快速变化的数字索引中定义数据中的字段为数字。因为该索引表主要存储区域位于内存,可以承担快速变化,对于页面浏览量,电子商务网站的价格等变化频繁的数据,适合采用这种索引,可以让搜索结果和实际对应的数据保持实时变化,并可以按照这类数据实时排序。用来存储但不参与搜索的源数据(即日期);用来存储但不参与搜索的源数据是存放于硬盘的定长文本数据库,用来组成搜索结果中出现的各元素,用于排序和范围查询。现有的搜索引擎仅进行文本匹配搜索,这对于结构化搜索引擎是远远不够的。采用本发明进行搜索的操作方法如下输入一个搜索请求,该搜索请求被分发到某个检索节点上,解析搜索需要的条件和参数,根据条件,对多个索引节点发起查询,获得内容,对不同搜索关键词的内容计算它们的交集,获得最后结果。检索节点根据数据返回情况,进行合并,并根据搜索配置的权重计算各结果得分。 对所有得分进行堆排序,获得前1000个结果,成为最后的搜索结果集并返回。所有节点(包括索引节点和检索节点)可检测健康状况,剔除故障节点,保证搜索服务的正常运行。
权利要求
1.一种基于云的结构化数据搜索方法,其特征在于,包括以下步骤第一步,建立一个由多台计算机组成的云平台,各计算机之间通过socket连接起来; 在云平台上实现集中管理和SAAS服务;各计算机上设有索引服务和检索服务; 第二步,对源数据进行标注,以使数据结构化; 第三步,根据源数据的标注结果,建立不同类型的索引,用于搜索。
2.根据权利要求1所述的基于云的结构化数据搜索方法,其特征在于所述第二步对源数据进行标注的方法是,将数据分为多种类型,数据类型包括可被搜索且分词的; 可被搜索且不分词的; 不被搜索仅存储的; 可做排序和范围查询的; 时间;需要快速变化的。
3.根据权利要求1所述的基于云的结构化数据搜索方法,其特征在于所述第三步建立不同类型的索引的方法是,将索引分为多种类型,索引类型包括全文索引;快速变化的数字索引; 用来存储但不参与搜索的源数据。
全文摘要
本发明公开了一种基于云的结构化数据搜索方法,包括以下步骤第一步,建立一个由多台计算机组成的云平台,各计算机之间通过socket连接起来;在云平台上实现集中管理和SAAS服务;各计算机上设有索引服务和检索服务;第二步,对源数据进行标注,以使数据结构化;第三步,根据源数据的标注结果,建立不同类型的索引,用于搜索。本发明通过建立搜索集群,为其他网站提供搜索服务,网站可以将结构化之后的数据通知给本服务,从而提供根据结构化数据和自定义条件的搜索结果。
文档编号G06F17/30GK102375860SQ20101026486
公开日2012年3月14日 申请日期2010年8月27日 优先权日2010年8月27日
发明者霍炬 申请人:盛乐信息技术(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1