CN102117320B - 一种结构化数据搜索的方法和装置 - Google Patents
一种结构化数据搜索的方法和装置 Download PDFInfo
- Publication number
- CN102117320B CN102117320B CN2011100048115A CN201110004811A CN102117320B CN 102117320 B CN102117320 B CN 102117320B CN 2011100048115 A CN2011100048115 A CN 2011100048115A CN 201110004811 A CN201110004811 A CN 201110004811A CN 102117320 B CN102117320 B CN 102117320B
- Authority
- CN
- China
- Prior art keywords
- search
- search results
- result set
- user
- strategy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种结构化数据搜索的方法和装置,其中方法包括:A、接收具备结构化数据搜索需求的搜索请求,解析所述搜索请求中的统一资源标识符(URI),确定所述URI对应的策略包;B、根据所述策略包中的服务属性信息,分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合;C、如果步骤B从多于1个结构化数据库中获取搜索结果集合,则按照所述策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理;D、将归并处理后得到的搜索结果集合提供给用户。通过本发明能够提高结构化数据搜索的效果,更加方便用户获取需要的信息。
Description
【技术领域】
本发明涉及互联网技术领域,特别涉及一种结构化数据搜索的方法和装置。
【背景技术】
结构化数据搜索也称作垂直搜索,是相对于通用搜索的信息量大、查询不准确、深度不够等提出的新的搜索引擎服务模式,其通过针对某一特定领域、某一特定人群或者某一特定需求提供的有一定价值的信息和相关服务。其特点就是:专、精、深,且具有行业色彩。
结构化数据搜索和普通的页面搜索最大的区别是对网页信息进行了结构化信息提取,也就是将网页的非结构化数据抽取成特定的结构化信息数据,然后将这些数据存储到数据库,进行进一步的加工处理,如去重、分类等,最后分词、索引,以供搜索。
但现有结构化数据搜索的搜索结果往往是互联网上已经存在的页面,搜索结果中的页面十分零散,需要用户逐一浏览和识别是否是满足需要的页面,搜索效果较差。
【发明内容】
有鉴于此,本发明提供了一种结构化数据搜索的方法和装置,以便于提高结构化数据搜索的搜索效果。
具体技术方案如下:
一种结构化数据搜索的方法,该方法包括:
A、接收具备结构化数据搜索需求的搜索请求,解析所述搜索请求中的URI,确定所述URI对应的策略包;
B、根据所述策略包中的服务属性信息,分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合;
C、如果步骤B从多于1个结构化数据库中获取搜索结果集合,则按照所述策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理;
D、将归并处理后得到的搜索结果集合提供给用户。
其中,步骤A中所述接收具备结构化数据搜索需求的搜索请求具体包括:
接收到来自浏览器的搜索请求后,对搜索请求中包含的搜索词进行语义分析后,判断该搜索词是否命中预设的结构化需求词典,如果是,则确定所述搜索请求具备结构化数据搜索需求;或者,
接收到来自浏览器的搜索请求后,判断所述搜索请求是否为中间页的搜索请求,如果是,则确定所述搜索请求具备结构化数据搜索需求;其中,所述中间页的搜索请求是浏览器在用户点击垂直搜索结果时发送来的。
另外,步骤A中确定所述URI对应的策略包具体包括:
对所述URI进行解析,获取所述URI中携带的服务类型信息;
确定所述服务类型信息对应的策略包;所述策略包是根据所述服务类型的行业特点预先配置的。
更进一步地,所述策略包中还包括:调度策略信息;
所述调度策略信息包括以下所列之一或任意组合:服务超时控制策略、丢结果的跨数据库重查策略以及搜索结果的数量控制策略;
其中,所述服务超时控制策略包括:当搜索时长超过服务属性对应的最大搜索时长时,从同一服务属性对应的同一结构化数据库或同一服务属性对应的其他结构化数据库中重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在所述最大搜索时长内;或者,当搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知;
所述丢结果的跨数据库重查策略包括:当针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,重新在所述某服务属性对应的其他结构化数据库中重新进行搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内;其中,N为预设的正整数;
所述搜索结果的数量控制策略用于控制从每一个结构化数据库中获得的搜索结果数量,或者控制返回给用户的搜索结果集合中的搜索结果数量。
较优地,所述策略包中还包括屏蔽等级信息;
在所述步骤B中还包括:根据所述屏蔽等级信息,在获取的各搜索结果集合中进行屏蔽处理,屏蔽的内容包括以下所列之一或组合:具有黄色内容的搜索结果、具有反动内容的搜索结果。
具体地,步骤C中按照所述策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理可以包括:
将步骤B获取的各搜索结果集合归并成一个搜索结果集合;或者,
分别保持步骤B获取的各搜索结果集合但归并为一个数据包。
其中,步骤B中所述分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合具体包括:
利用从所述URI中解析出的关键词构建查询表达式,利用构建的查询表达式分别在各服务属性信息对应的结构化数据库中进行搜索,获得各服务属性信息对应的搜索结果集合。
利用从所述URI中解析出的关键词构建查询表达式具体包括:
将所述解析出的关键词进行逻辑拼装和优化后,形成所述查询表达式;
其中,所述优化包括以下所列之一或任意组合:同义词扩展、地域扩展、关键词细化。
所述地域扩展所使用的地域信息为:从所述URI中解析出的用户IP所对应的地域信息,或者,cookie记录的地域信息。
更进一步地,在所述步骤B中还包括:在获取的各搜索结果集合中,对搜索结果进行排序;
其中采用的排序策略包括:按照搜索结果与所述搜索请求的相关性从高到低的顺序对搜索结果进行排序。
另外,所述排序策略可以进一步包括:
根据所述获取的各搜索结果集合中各搜索结果的特征状况结合预先设置的特征排序权值,对搜索结果进行排序,其中所述特征包括以下所列之一或任意组合:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性;或者,
按照预设的聚类策略,对所述获取的各搜索结果集合中的搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。
更进一步地,在所述步骤C中还包括:
对归并处理后得到的搜索结果集合进行优化处理,具体包括以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类;
其中,所述基于摘要判断的过滤为:判断所述归并处理后得到的搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求的搜索结果从所述归并处理后得到的搜索结果集合中删除;
所述搜索结果的摘要飘红为:将所述归并处理后得到的搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色;
所述搜索结果的内容聚类为:基于预设的聚类策略,将所述归并处理后得到的搜索结果集合中的搜索结果进行聚类。
其中,所述聚类策略包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
更优地,该方法还包括:对步骤B获取的各搜索结果集合中搜索结果的指定属性字段进行统计,得到各搜索结果集合对应的统计结果。
所述策略包中还包括用户引导策略;
如果所述用户引导策略指示需要进行用户引导,则在执行所述步骤D之前还包括:
利用各搜索结果集合对应的统计结果,对所述归并处理后得到的搜索结果集合中的搜索结果进行分类,形成用户引导优化数据;该用户引导优化数据中包含分类后得到的一个以上的归类区信息。
在此基础上,所述步骤D具体包括:
将所述归并处理后得到的搜索结果集合以及所述用户引导优化数据,利用预设的展现模板进行渲染后,形成超文本标记语言HTML数据返回给所述用户使用的浏览器。
一种结构化数据搜索的装置,该装置包括:用户交互模块、服务调度模块、通用检索模块和基本检索模块;
所述用户交互模块,用于接收具备结构化数据搜索需求的搜索请求,解析所述搜索请求中的统一资源标识符URI,确定所述URI对应的策略包;将所述服务调度模块发送来的搜索结果集合提供给用户;
所述服务调度模块,用于根据所述策略包中的服务属性信息,确定所述服务属性信息对应的结构化数据库,将所述搜索请求的关键词包含在垂直服务请求中发送给确定的结构化数据库所对应的通用检索模块;如果确定的结构化数据库所对应的通用检索模块多于1个,则按照所述策略包中的结果归并机制,将所述通用检索模块发送来的各搜索结果集合进行归并处理,将归并处理后得到的搜索结果集合发送给所述用户交互模块;
所述通用检索模块,用于接收到垂直服务请求后,请求对应的基本检索模块;将所述通用检索模块返回的搜索结果集合发送给所述服务调度模块;
所述基本检索模块,用于被所述通用检索模块请求时,在结构化数据库中进行搜索,并将搜索结果集合返回给所述通用检索模块。
其中,所述用户交互模块具体包括:用户交互子模块、需求识别子模块、解析子模块和策略包确定子模块;
所述用户交互子模块,用于接收来自浏览器的搜索请求,将该搜索请求发送给需求识别子模块;将所述服务调度模块发送来的搜索结果集合发送给所述浏览器;
所述需求识别子模块,用于识别所述搜索请求是否具备结构化数据搜索需求;
所述解析子模块,用于对所述搜索请求中的URI进行解析,获取所述URI中携带的服务类型信息;
所述策略包确定子模块,用于在所述需求识别子模块识别出所述搜索请求具备结构化数据搜索需求时,确定所述解析子模块获取的所述服务类型信息对应的策略包,所述策略包是根据所述服务类型的行业特点预先配置的。
具体地,所述需求识别子模块对所述搜索请求中包含的搜索词进行语义分析后,判断所述搜索词是否命中预设的结构化需求词典,如果是,则确定所述搜索请求具备结构化数据搜索需求,否则,确定所述搜索请求不具备结构化数据搜索需求;或者,
判断所述搜索请求是否为中间页的搜索请求,如果是,则确定所述搜索请求具备结构化数据搜索需求,否则,确定所述搜索请求不具备结构化数据搜索需求;其中,所述中间页的搜索请求是浏览器在用户点击垂直搜索结果时发送来的。
更进一步地,所述策略包中还包括:调度策略信息;
所述服务调度模块,还用于根据所述策略包中的调度策略信息,对搜索过程进行调度控制;
所述调度策略信息包括以下所列之一或任意组合:服务超时控制策略、丢结果的跨数据库重查策略以及搜索结果的数量控制策略;
其中,所述服务超时控制策略包括:当搜索时长超过服务属性对应的最大搜索时长时,将所述垂直服务请求重新发送给同一通用检索模块,或者重新发送给同一服务属性对应的其他通用检索模块以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在所述最大搜索时长内;或者,当搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知;
所述丢结果的跨数据库重查策略包括:当针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,将所述垂直服务请求重新发送给所述某服务属性对应的其他通用检索模块以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内;其中,N为预设的正整数;
所述搜索结果的数量控制策略用于控制从每一个结构化数据库中获得的搜索结果数量,或者控制返回给用户的搜索结果集合中的搜索结果数量。
另外,所述策略包中还包括屏蔽等级信息;
所述基本检索模块,还用于在结构化数据库中进行搜索后,根据所述屏蔽等级信息,在搜索结果集合中进行屏蔽处理,屏蔽的内容包括以下所列之一或组合:具有黄色内容的搜索结果、具有反动内容的搜索结果。
具体地,所述服务调度模块按照所述策略包中的结果归并机制,将各通用检索模块发送来的搜索结果集合归并成一个搜索结果集合发送给用户交互模块;或者,分别保持所述通用检索模块发送来的各搜索结果集合但合并为一个数据包发送给所述用户交互模块。
其中,所述通用检索模块接收到垂直服务请求后,利用所述用户交互模块从所述URI中解析出的关键词构建查询表达式,将构建的查询表达式发送给对应的基本检索模块;
所述基本检索模块利用所述查询表达式在结构化数据库中进行检索。
具体地,所述通用检索模块具体将所述用户交互模块从所述URI中解析出的关键词进行逻辑拼装和优化后,形成所述查询表达式;
其中,所述优化包括以下所列之一或任意组合:同义词扩展、地域扩展、关键词细化。
较优地,所述用户交互模块,还用于从所述URI中解析出用户IP,或者获取所述搜索请求对应的cookie;
所述通用检索模块在进行所述地域扩展时使用的地域信息为:所述用户IP对应的地域信息,或者,所述cookie记录的地域信息。
具体地,所述基本检索模块可以包括:搜索子模块、排序子模块和反馈子模块;
所述搜索子模块,用于在所述基本检索模块被所述通用检索模块请求时,利用所述搜索请求的关键词在结构化数据库中进行搜索;
所述排序子模块,用于在所述搜索子模块获得的搜索结果集合中,对搜索结果进行排序,将排序后的搜索结果集合提供给所述反馈子模块;其中采用的排序策略包括:按照搜索结果与所述搜索请求的相关性从高到低的顺序对搜索结果进行排序;
所述反馈子模块,用于将搜索结果集合返回给所述通用检索模块。
更进一步地,所述排序策略还可以包括:
根据所述获取的各搜索结果集合中各搜索结果的特征状况结合预先设置的特征排序权值,对搜索结果进行排序,其中所述特征包括以下所列之一或任意组合:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性;或者,
按照预设的聚类策略,对所述获取的各搜索结果集合中的搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。
更进一步地,所述通用检索模块,还用于对归并处理后得到的搜索结果集合进行优化处理,发送给所述用户交互模块的搜索结果集合为优化处理后的搜索结果集合;所述优化处理具体包括以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类;
其中,所述基于摘要判断的过滤为:判断所述归并处理后得到的搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求的搜索结果从所述归并处理后得到的搜索结果集合中删除;
所述搜索结果的摘要飘红为:将所述归并处理后得到的搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色;
所述搜索结果的内容聚类为:基于预设的聚类策略,将所述归并处理后得到的搜索结果集合中的搜索结果进行聚类。
其中,所述聚类策略包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
更优地,所述基本检索模块还包括:
统计子模块,用于对所述搜索子模块获得的搜索结果集合中搜索结果的指定属性字段进行统计,得到搜索结果集合对应的统计结果。
所述策略包中还可以包括用户引导策略;
该装置还包括:用户引导模块,用于如果所述用户引导策略指示需要进行用户引导,则利用各统计子模块的统计结果,将所述服务调度模块发送给所述用户交互模块的搜索结果集合进行搜索结果的分类,形成用户引导优化数据,将形成的用户引导优化数据发送给所述用户交互模块;其中所述用户引导优化数据包含分类后得到的一个以上的归类区信息。
在此基础上,所述用户交互模块,还用于将所述服务调度模块发送来的搜索结果集合以及所述用户引导模块发送来的用户引导数据,利用预设的展现模板进行渲染后,形成超文本标记语言HTML数据返回给所述用户使用的浏览器。
由以上技术方案可以看出,在本发明中通过策略包的设置,能够在对搜索请求进行结构化搜索过程中,更加准确且有针对性的基于搜索请求的服务属性在对应的结构化数据库中获取搜索结果,并将获取的搜索结果进行归并后返回给用户。通过本发明能够将结构化数据搜索的搜索结果以更加整合和有针对性的方式展现给用户,提高了结构化数据搜索的搜索效果,更加方便用户获取需要的信息。
【附图说明】
图1为本发明实施例一提供的主要方法流程图;
图2为本发明实施例二提供的详细方法流程图;
图3为本发明实施例二提供的渲染后的用户引导优化数据的实例图;
图4为本发明实施例三提供的装置结构示意图;
图5为本发明实施例三提供的基本检索模块的结构示意图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
实施例一、
图1为本发明实施例一提供的主要方法流程图,如图1所示,该方法可以包括以下步骤:
步骤101:接收具备结构化数据搜索需求的搜索请求,解析该搜索请求中的统一资源标识符(URI),确定该URI对应的策略包。
本实施例中所提供的方法可以在搜索引擎的服务器端执行。本步骤中搜索引擎的服务器端接收到具备结构化数据搜索需求的搜索请求可以包括但不限于以下情况:
1)用户在搜索框中输入具备结构化数据搜索需求的搜索词后,浏览器根据用户输入的搜索词向搜索引擎的服务器端发送搜索请求。搜索引擎的服务器端接收到该搜索请求后,可以对该搜索请求中包含的搜索词进行语义分析后,判断该搜索词是否命中预设的结构化需求词典,如果是,则可以确定该搜索请求具备结构化数据搜索需求;否则,确定该搜索请求不具备结构化数据搜索需求,则对该搜索请求执行普通的页面搜索(即非结构化数据搜索)。
其中,结构化需求词典可以是基于数据挖掘或者人工配置的词典,该词典可以映射到搜索引擎所使用的结构化数据库中的索引。其中,该结构化需求词典中可以包含:结构化数据库中的索引,或者结构化数据库中索引的同义词或扩展词等。
例如,在关于招聘的结构化数据库中包含索引“高级工程师”,则预设的结构化需求词典中可以包含“高级工程师”,还可以包含其同义词“高工”或者扩展词“高级研发工程师”。当用户输入的搜索词为“高工”时,浏览器向搜索引擎的服务器端发送包含该搜索词的搜索请求,搜索引擎的服务器端将该搜索词与预设的结构化需求词典进行匹配时,确定命中词典中的词语,则可以确定该搜索请求为具备结构化数据搜索需求的搜索请求。
2)用户从搜索页面中点击垂直搜索结果,浏览器根据用户的点击结果向搜索引擎的服务器端发起中间页的搜索请求。
搜索引擎的服务器端在针对用户输入的搜索词向用户返回的搜索结果中,可以嵌入一个垂直搜索结果框,该垂直搜索结果框标识垂直搜索结果。当用户点击该垂直搜索结果框时,浏览器会向搜索引擎的服务器端发起中间页的搜索请求,该搜索请求中包含用户输入的搜索词以及中间页服务标识。
其中,中间页服务标识可以通过域名进行区分。例如,关于招聘的中间页的搜索请求可以采用域名:open.***.com/zhaopin。
当搜索引擎的服务器端接收到浏览器发送来的搜索请求后,如果确认该搜索请求包含中间页服务标识,则可以识别出该搜索请求具备结构化数据搜索需求。
在本发明实施例中,可以预先针对各服务类型分别设置对应的策略包,该策略包中可以包括:服务属性信息和结果归并机制信息。还可以进一步以下中的一种或任意组合:调度策略信息、屏蔽等级信息、用户引导策略信息等。
其中,不同服务类型对应的策略包是根据各服务类型的行业特点进行配置的,可以是人工配置也可以是机器学习的。服务属性信息、结果归并机制信息、调度策略信息和用户引导策略通常是人工进行配置的,屏蔽等级信息可以是人工配置的也可以是机器学习实现的。策略包中各信息的具体内容和用途将在实施例二中具体描述。
搜索引擎的服务器端识别出接收到的搜索请求具备结构化数据搜索需求后,可以对搜索请求中的URI进行解析,从而获取URI中携带的服务类型信息,该服务类型信息可以为服务号或者其他形式。然后,确定该服务类型信息所对应的策略包。
步骤102:根据策略包中的服务属性信息,分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合。
由于不同服务属性往往对应不同的结构化数据库,当策略包中包含多个服务属性信息,即搜索请求具备多种服务属性时,可以分别根据搜索请求中的搜索词从各服务属性信息对应的结构化数据库中进行搜索,获取对应的搜索结果集合。例如,如果策略包中的服务属性信息对应N个服务属性,可以根据搜索请求中的搜索词分别从N个服务属性对应的N个结构化数据库中进行搜索,获取对应的N个搜索结果集合。
步骤103:如果步骤102从多于1个结构化数据库中获取搜索结果集合,则按照策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理。
步骤104:将归并处理后得到的搜索结果集合提供给用户。
在按照结果归并机制对获取到的搜索结果集合进行归并处理后,搜索引擎的服务器端就可以将归并处理后得到的搜索结果集合发送给浏览器,由浏览器展现给用户。
至此实施例一所示流程结束,下面通过实施例二对本发明所提供的上述方法进行详细描述。
实施例二、
图2为本发明实施例二提供的方法流程图,在该实施例中以用户从搜索页面中点击垂直搜索结果从而发起中间页的搜索请求为例,如图2所示,该方法详细包括以下步骤:
步骤201:接收浏览器发送来的中间页的搜索请求,确定该搜索请求具备结构化数据搜索需求。
步骤202:对该搜索请求中的URI进行解析,确定URI中携带的服务类型信息所对应的策略包。
如实施例一中所述,策略包中可以包括:服务属性信息和结果归并机制信息。还可以进一步包括以下所列的一种或任意组合:调度策略信息、屏蔽等级信息、用户引导策略信息等。
其中调度策略可以包括但不限于以下中的一种或任意组合:服务超时控制策略、丢结果的跨数据库重查策略、搜索结果的数量控制策略。
服务超时控制策略是在搜索时长超过对应服务的最大搜索时长的情况,执行控制策略。包括但不限于以下策略:对搜索时长超过服务属性对应的最大搜索时长时,从同一服务属性对应的同一结构化数据库或其他结构化数据库(一种服务属性可能对应多个结构化数据库,如果在一个结构化数据库中的搜索超时,可以在同一服务属性对应的其他结构化数据库中重新搜索)中进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在对应服务的最大搜索时长内;或者,对搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知。
丢结果的跨数据库重查策略用于在搜索结果丢失状况达到预设的程度的情况下,执行的控制策略。包括但不限于以下策略:针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,重新在同一服务属性对应的其他结构化数据库中重新进行搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内。其中,N为预设的正整数。
搜索结果的数量控制策略用于控制从每一个结构化数据库中获得搜索结果数量,以及用于控制返回给用户的搜索结果数量。
屏蔽等级可以根据不同服务类型的行业特点进行设置,例如,招聘、商品等服务类型可以设置较低的屏蔽等级,学术等服务类型可以设置较高的屏蔽等级。屏蔽的内容可以包括但不限于:具有黄色内容的搜索结果以及具有反动内容的搜索结果。
结果归并机制用于将多个服务属性对应的搜索结果集合进行归并处理,可以包含归并处理的粒度信息,例如:具体是将各服务属性对应的搜索结果集合归并成一个搜索结果集合返回给用户,还是分别保持各服务属性对应搜索结果集合但归并为一个数据包返回给用户。
用户引导策略主要是是否对提供给用户的搜索结果进行用户引导。所谓用户引导是为了提高用户体验,减少用户输入成本,对搜索结果的各种属性字段进行统计后,根据统计结果对搜索结果进行的分类。
举一个例子,假设用户输入的query为“Nokia智能手机”,当用户点击针对该query的垂直搜索结果后,浏览器针对该query发起中间页的搜索请求,该搜索请求的URI假设为:
http://open.***.com/shopping/s?wd=Nokia+%D6%C7%C4%DC%CA%D6%BB%FA&tn=shopping&rn=20&p=mini
对该URI进行解析,解析出搜索请求携带的关键词为“Nokia智能手机”,服务类型信息为shopping,确定该服务类型信息对应的策略包为shop.pkg。假设,该策略包中包含的服务属性信息为:商家内容和商品内容;调度策略为:从每一个结构化数据库中获得搜索结果的数量不超过100条,提供给用户的搜索结果数量不超过50条;屏蔽等级为:普通级别;结果归并机制为:将各服务属性对应的搜索结果集合归并成一个搜索结果集合返回给用户;用户引导策略为:对提供给用户的搜索结果集合进行用户引导。
另外,搜索引擎的服务器端还会解析出URI携带的其他参数,例如用户的IP信息、cookie信息等。这些IP信息以及cookie信息可以用于在后续搜索表达式的构建过程中,利用地域信息对关键词进行地域扩展,从而对搜索结果集合中的搜索结果进行调整。
当用户所输入query包含的关键词中不涉及地域特征,则可以利用从URI中解析出的IP信息对搜索结果集合中的搜索结果进行基于地域信息的调整排序权值处理。例如,关键词为“Nokia智能手机”的query,如果解析出的IP信息指示地域为北京,则可以提高地域“北京”在搜索结果集合中的排序权重。
由于有些用户的行为信息cookie会进行记录,因此,通过从URI中解析出的cookie信息,可以基于用户行为在创建查询表达式的过程中对关键词进行扩展,最终可用于对搜索结果集合中的搜索结果进行排序的调整。例如,用户在搜索过程中涉及了地域信息“北京”,则cookie会记录该地域信息,在下次用户进行搜索时,可以在搜索表达式的构建过程中利用该地域信息进行地域扩展(该部分内容将在步骤204中涉及)。
步骤203:根据策略包中的服务属性信息,确定各服务属性信息对应的结构化数据库。
仍以上述为例,该策略包中包含的服务属性信息为:商家内容和商品内容,则需要确定搜索引擎中针对商家内容的数据库和针对商品内容的数据库。
步骤204:对解析出的关键词进行查询表达式的构建,然后利用构建的查询表达式分别在步骤203中确定的结构化数据库中进行搜索,从各结构化数据库中分别获得搜索结果集合,并对各搜索结果集合中的搜索结果进行统计。
本步骤中对解析出的关键词进行查询表达式的构建具体是:将解析出的关键词进行逻辑拼装和优化后,形成最终的查询表达式。其中,进行的优化可以包括但不限于:同义词扩展、地域扩展、关键词细化等。
仍以上述例子说明,提取关键词为:“Nokia”和“智能手机”,进行逻辑拼装后,形成:“EE_Nokia&FF_智能手机”。对“Nokia”进行同义词扩展,可以扩展为“诺基亚”。对“智能手机”可以细化为“智能&手机”。基于URI中携带的用户IP信息或者基于cookie所记录的地域信息,可以进行地域扩展,加入地域信息“北京”。最终形成的查询表达式可以为:((EE_Nokia)|(EE_诺基亚))&((FF_智能&FF_手机)|(FF_智能手机))&(?CC_北京)。其中,“EE_”标识品牌,“FF_”标识分类,“CC_”标识地域,其中“?”标识该扩展项可选,即“北京”这一地域扩展是可选项,可以用于后续对搜索结果进行Rank时提高该地域扩展项的排序权值使用。
利用构建的表达式,采用递归查询的方式分别在步骤203确定的结构化数据库中进行搜索,即分别在针对商家内容的数据库和针对商品内容的数据库中执行查询表达式的搜索。
在获取搜索结果集合时,可以进一步按照策略包中的屏蔽等级对搜索结果进行屏蔽处理,屏蔽处理后得到的搜索结果构成搜索结果集合。具体地,可以预先针对不同的屏蔽等级设置屏蔽词表,在进行屏蔽处理时,利用对应屏蔽等级的屏蔽词表对搜索结果进行屏蔽处理,可以屏蔽掉搜索结果中存在的诸如黄色或反动等内容。
更进一步地,对获取的搜索结果集合中进行搜索结果的Rank,可以采用相关性排序方式,即按照搜索结果集合中各搜索结果与搜索请求的相关性从高到低的顺序进行的排序,这是搜索领域常用的排序方式,不再详细赘述。
更优地,在相关性排序方式的基础上,可以进一步采用多特征融合排序方式,即预先设定各特征的排序权值,根据搜索结果集合中各搜索结果的特征状况结合对应的排序权值对搜索结果进行排序。上述特征可以包括但不限于:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性等,也可以是某些资源所特有的特征,例如商品的存货状态(即是否缺货)、软件版本、软件下载速度等。具体选取那些特征进行排序以及特征所在的排序权重均可以根据不同的服务属性灵活设置。
更优地,为了使搜索结果更加多样,以能够满足不同用户的需求,可以在相关性排序方式的基础上,或者多特征融合排序方式的基础上,对搜索结果进行多样性调整。具体为:按照预设的聚类策略对各搜索结果集合中对搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。其中,聚类策略可以包括但不限于:按照搜索结果与搜索请求的相关度、按照搜索结果来源、发布时间进行聚类等。
例如,在搜索结果集合中,将各搜索结果按照搜索结果与搜索请求的相关度进行聚类,形成不同相关度区间对应的各组搜索结果;然后在各组搜索结果中将各搜索结果的顺序打散。这样能够使得近似相关度的搜索结果在显示给用户时具有多样化的特点,例如使得各品牌或各商家的产品在各组搜索结果中分布更加均匀。
在获取各搜索结果集合后,为了满足用户引导的需求,可以对各搜索结果集合中搜索结果的各种属性字段进行统计,具体为:获取搜索结果后,遍历结果拉链,根据配置文件对指定的属性字段进行统计。例如,按品牌统计、按商家统计、按价格分段统计等。其中,可以预先针对各服务属性指定进行统计的字段,并形成配置文件。例如,对于商品这种服务属性,可以按品牌统计、按商家统计、按价格分段统计等。得到的统计信息可以用于后续的用户引导。
步骤205:按照策略包中的结果归并机制,对从各结构化数据库中分别获得的搜索结果集合进行归并处理。
在进行结果归并处理时,由于上述实例中策略包的结果归并机制为:将各服务属性对应的搜索结果集合归并成一个搜索结果集合返回给用户对归并处理后的搜索结果集合进行整体Rank将各服务属性对应的搜索结果结合归并成一个搜索结果集合返回给用户,因此,将搜索结果集合进行归并处理后,统一进行Rank,因此,在本步骤中,将从各结构化数据库中分别获得的搜索结果集合归并成一个搜索结果集合。
在归并成一个搜索结果集合后,更进一步地,在将搜索结果集合进行归并后,还可以进一步对归并后得到的搜索结果集合进行优化处理。其中,优化处理包括但不限于以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类。
其中,基于摘要判断的过滤可以为:判断搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求(例如摘要信息缺失或者摘要信息质量很差)的搜索结果从搜索结果集合中删除。
搜索结果的摘要飘红可以为:将搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色。
搜索结果的内容聚类可以为:基于预设的聚类策略,将搜索结果集合中的搜索结果进行聚类。其中,聚类策略包括但不限于:基于搜索结果与搜索请求的相关性的聚类,基于搜索结果来源的聚类,基于搜索结果的发布时间的聚类。
步骤206:利用步骤204中的统计结果,生成用户引导优化数据。
需要说明的是,步骤205和步骤206并没有固定的先后顺序,可以以任意的顺序先后执行,也可以同时执行。
利用统计分析的结果生成用户引导优化数据的过程可以为:利用统计结果对归并处理得到的搜索结果集合中的搜索结果进行分类,得到一个以上的归类区。具体分类为哪些归类区,即采用的分类策略,可以根据具体的服务类型预先确定。
仍以“Nokia智能手机”的query为例,生成的归类区可以包括:功能归类区、品牌归类区、商家归类区、价格归类区。其中,功能归类区中可以进一步包括各种具体功能的区域,例如:gsm手机区、直板手机区、拍照手机区、导航手机区、商务手机区。品牌归类区中可以进一步包括各种品牌的区域,例如:诺基亚区。商家归类区中可以进一步包括各种商家的区域,例如:卓越亚马逊区、优优手机商城区、中关村商城区、百信手机商城区、北斗手机网区、欧酷区。价格归类区中可以进一步包括各种价格区间的区域,例如:1000以下、1000-1600、1600-2000、2000-3000以及3000以上。
其中,各归类区进一步包含的区域可以预先人工配置,也可以根据搜索结果的属性内容自动筛选形成。
例如,在形成商家归类区中的各区域时,可以根据对搜索结果中商家的统计结果,将达到设定条数搜索结果的商家确定为一个区域,该商家对应的搜索结果归属于该区域。
再例如,在形成价格归类区中的各区域时,可以依据对价格的数量和每个价格出现的次数进行统计的结果,对价格进行排序。如果价格的数量小于或等于预先设置的最小区间价格数量,则不形成价格归类区中的区域;如果价格的数量大于预先设置的最小区间价格数量,则按照预设的分割策略将所有价格分为M个区间,如果M值小于预先设置的最小区间数量,则不形成价格归类区中的区域;否则,将划分的M个区间作为价格归类区中的区域。其中,上述分割策略可以灵活设置,例如,保证每个区间的价格数目在特定的范围内,或者,保证每个区间的最大价格差异在设定的范围内,等等。
步骤207:将归并处理得到的搜索结果集合以及用户引导优化数据利用预先设置的展现模板进行渲染,形成超文本标记语言(HTML)数据发送给浏览器。
在本步骤中,可以使用预先在搜索引擎服务器端设置的展现模板,对归并处理得到的搜索结果集合以及用户引导优化数据进行渲染,形成浏览器能够理解和展示的HTML数据。
其中,渲染后形成的标准HTML数据中,用户引导优化数据对应的部分可以如图3所示。
该实施例中,在进行上述结构化搜索的同时,并不妨碍对搜索请求进行普通的页面搜索,较优地,通过上述结构化数据搜索获得的搜索结果集合最终可以以中间页的形式展现给用户,并可以进一步引入用户引导功能,从而更加方便于用户的信息获取。
以上是对本发明所提供的方法进行的详细描述,下面通过实施例三对本发明所提供的装置进行详细描述。
实施例三、
图4为本发明实施例三提供的装置结构示意图,如图4所示,该装置可以具体包括:用户交互模块400、服务调度模块410、通用检索模块420和基本检索模块430。
用户交互模块400,用于接收具备结构化数据搜索需求的搜索请求,解析搜索请求中的URI,确定URI对应的策略包;将服务调度模块410发送来的搜索结果集合提供给用户。
不同服务类型对应的策略包是根据各服务类型的行业特点进行配置的,可以是人工配置也可以是机器学习的。在本发明实施例中策略包中可以包括服务属性信息和结果归并机制信息。还可以进一步以下中的一种或任意组合:调度策略信息、屏蔽等级信息、用户引导策略信息等(将在该实施例的后续描述中涉及)。其中,服务属性信息、结果归并机制信息、调度策略信息和用户引导策略通常是人工进行配置的,屏蔽等级信息可以是人工配置的也可以是机器学习实现的。
服务调度模块410,用于根据策略包中的服务属性信息,确定服务属性信息对应的结构化数据库,将搜索请求的关键词包含在垂直服务请求中发送给确定的结构化数据库所对应的通用检索模块420;如果确定的结构化数据库所对应的通用检索模块420多于1个,则按照策略包中的结果归并机制,将通用检索模块420发送来的各搜索结果集合进行归并处理,将归并处理后得到的搜索结果集合发送给用户交互模块400。
对于某些搜索请求来说,其用户交互模块确定该搜索请求所对应的策略包中,该搜索请求的服务属性可能为多个,例如对于“Nokia智能手机”的query,其对应的服务属性为商品和商家。通常一个结构化数据库由一个通用检索模块420统一管理,因此,对于服务属性为多个的搜索请求,服务调度模块410会在分析出本次搜索需要多个通用检索模块420时,会向该多个通用检索模块420发送垂直服务请求,以调度该多个通用检索模块420针对该搜索请求在对应服务属性的结构化数据库中进行搜索。
对应地,如果服务调度模块410请求了多个通用检索模块420,那么在该多个通用检索模块420返回搜索结果集合时,需要按照策略包中包含的结果归并机制,对多个通用检索模块420返回的搜索结果进行归并处理。
通用检索模块420,用于接收到垂直服务请求后,请求对应的基本检索模块430;将通用检索模块420返回的搜索结果集合发送给服务调度模块410。
基本检索模块430,用于被通用检索模块420请求时,在结构化数据库中进行搜索,并将搜索结果集合返回给通用检索模块420。
需要说明的是,一个结构化数据库可以仅对应一个基本检索模块430,由该基本检索模块430完成一个结构化数据库的搜索。但在有的情况下,为了实现对一个结构化数据库的负载分担或容错处理,可能会存在一个结构化数据库对应多个基本检索模块430,并能够由多个基本检索模块430共同完成对一个结构化数据库的搜索,在这种情况下,一个通用检索模块420可能会请求多个基本检索模块430实现对一个结构化数据库的检索,并且对该多个基本检索模块430返回的搜索结果集合进行整合。
具体地,上述用户交互模块400可以包括:用户交互子模块401、需求识别子模块402、解析子模块403和策略包确定子模块404。
用户交互子模块401,用于接收来自浏览器的搜索请求,将该搜索请求发送给需求识别子模块402;将服务调度模块410发送来的搜索结果集合发送给浏览器。
需求识别子模块402,用于识别搜索请求是否具备结构化数据搜索需求。
解析子模块403,用于对搜索请求中的URI进行解析,获取URI中携带的服务类型信息。
该服务类型信息可以为服务号或其他形式。解析子模块403会将对URI解析得到的参数(该参数主要是搜索请求携带的关键词)以及策略包的信息以查询参数的形式继续向服务调度模块410传递。
策略包确定子模块404,用于在需求识别子模块402识别出搜索请求具备结构化数据搜索需求时,确定解析子模块403获取的服务类型信息对应的策略包,策略包是根据服务类型的行业特点预先配置的。
具体地,需求识别子模块识别搜索请求是否具备结构化数据搜索需求的方式可以采用以下两种:
第一种方式:对搜索请求中包含的搜索词进行语义分析后,判断搜索词是否命中预设的结构化需求词典,如果是,则确定搜索请求具备结构化数据搜索需求。
第二种方式:判断搜索请求是否为中间页的搜索请求,如果是,则确定搜索请求具备结构化数据搜索需求;其中,中间页的搜索请求是浏览器在用户点击垂直搜索结果时发送来的。
基于上述结构,服务调度模块410,还可以用于根据策略包中的调度策略信息,对搜索过程进行调度控制。
具体的调度策略信息可以包括以下所列之一或任意组合:服务超时控制策略、丢结果的跨数据库重查策略以及搜索结果的数量控制策略。
其中,服务超时控制策略包括:当搜索时长超过服务属性对应的最大搜索时长时,将垂直服务请求重新发送给同一通用检索模块420,或者重新发送给同一服务属性对应的其他通用检索模块420以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在最大搜索时长内;或者,当搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知。
也就是说,当服务调度模块410确定搜索时长超限时,可以直接返回搜索超时的通知,也可以采用一定的容错机制,即调度同一通用检索模块420重新进行搜索,或者调度同一服务属性对应的其他通用检索模块420重新进行搜索。
上述丢结果的跨数据库重查策略可以具体包括:当针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,将垂直服务请求重新发送给某服务属性对应的其他通用检索模块420以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内;其中,N为预设的正整数。
搜索结果的数量控制策略用于控制从每一个结构化数据库中获得的搜索结果数量,或者控制返回给用户的搜索结果集合中的搜索结果数量。
在此实现搜索结果的数量控制时,为了保证搜索结果的数量要求,可以对基本检索模块430发送给通用检索模块420的搜索结果集合中的搜索数量以及通用检索模块420发送给服务调度模块410的搜索结果集合中的搜索结果数量进行冗余的控制。例如,如果设定返回给用户的搜索结果集合中的搜索结果数量为每页10条搜索结果,则通用检索模块420可以返回两倍数目的搜索结果给服务调度模块410,供服务调度模块410在对搜索结果集合进行归并和优化处理时,选择其中10条返回给用户交互模块400。
为了实现对搜索结果中不法信息的屏蔽,策略包中还可以包括屏蔽等级信息。此时,基本检索模块430,还可以用于在结构化数据库中进行搜索后,根据屏蔽等级信息,在搜索结果集合中进行屏蔽处理,屏蔽的内容包括但不限于以下所列之一或组合:具有黄色内容的搜索结果以及具有反动内容的搜索结果。
另外,服务调度模块410在对通用检索模块420发送来的搜索结果集合进行归并处理时,可以采用以下两种方式:
第一种方式:按照策略包中的结果归并机制,将各通用检索模块420发送来的搜索结果集合归并成一个搜索结果集合发送给用户交互模块400。
第二种方式:按照策略包中的结果归并机制,分别保持通用检索模块420发送来的各搜索结果集合但合并为一个数据包发送给用户交互模块400。这种方式中,仍保持各搜索结果集合的独立性,但将各搜索结果集合合并成一个数据包,用户交互模块400接收到该数据包后,呈现搜索结果的形式仍是各搜索结果集合分别独立呈现。
具体地,通用检索模块420接收到垂直服务请求后,可以利用用户交互模块400从URI中解析出的关键词构建查询表达式,将构建的查询表达式发送给对应的基本检索模块430。
基本检索模块430利用查询表达式在结构化数据库中进行检索。
其中,构建查询表达式时,通用检索模块420具体将用户交互模块400从URI中解析出的关键词进行逻辑拼装和优化后,形成查询表达式。其中,优化包括以下所列之一或任意组合:同义词扩展、地域扩展、关键词细化。
为了实现地域扩展,用户交互模块400,还可以用于从URI中解析出用户IP,或者获取搜索请求对应的cookie。
通用检索模块420在进行地域扩展时使用的地域信息为:用户IP对应的地域信息,或者,cookie记录的地域信息。
为了实现基本检索模块430的检索功能,其中,基本检索模块430的结构可以如图5所示,具体包括:搜索子模块431、排序子模块432和反馈子模块433。
搜索子模块431,用于在基本检索模块430被通用检索模块420请求时,利用搜索请求的关键词在结构化数据库中进行搜索。
排序子模块432,用于在搜索子模块431获得的搜索结果集合中,对搜索结果进行排序,将排序后的搜索结果集合提供给反馈子模块433;其中采用的排序策略可以包括:按照搜索结果与搜索请求的相关性从高到低的顺序对搜索结果进行排序。这种策略即为方法实施例中描述的相关性排序方式。
反馈子模块433,用于将搜索结果集合返回给通用检索模块420。
在上述相关性排序方式的基础上,排序策略可以进一步包括:根据获取的各搜索结果集合中各搜索结果的特征状况结合预先设置的特征排序权值,对搜索结果进行排序,其中特征包括以下所列之一或任意组合:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性。这种策略即为方法实施例中描述的多特征融合排序方式。
在上述相关性排序方式的基础上,或者在多特征融合排序方式的基础上,排序策略还可以包括:按照预设的聚类策略,对获取的各搜索结果集合中的搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。使用的聚类策略可以包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
更优地,通用检索模块420,还可以用于对归并处理后得到的搜索结果集合进行优化处理,发送给用户交互模块400的搜索结果集合为优化处理后的搜索结果集合;优化处理具体包括以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类。
其中,基于摘要判断的过滤具体为:判断归并处理后得到的搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求的搜索结果从归并处理后得到的搜索结果集合中删除。
搜索结果的摘要飘红具体为:将归并处理后得到的搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色。
搜索结果的内容聚类具体为:基于预设的聚类策略,将归并处理后得到的搜索结果集合中的搜索结果进行聚类。使用的聚类策略可以包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
除此之外,基本检索模块430还可以包括:
统计子模块434,用于对搜索子模块431获得的搜索结果集合中搜索结果的指定属性字段进行统计,得到搜索结果集合对应的统计结果。
上述统计结果可以用于用户引导,此时,策略包中还可以包括用户引导策略。该装置还包括:用户引导模块440,用于如果用户引导策略指示需要进行用户引导,则利用各基本检索模块430的统计结果,将服务调度模块410发送给用户交互模块400的搜索结果集合进行搜索结果的分类,形成用户引导优化数据,将形成的用户引导优化数据发送给用户交互模块400;其中用户引导优化数据包含分类后得到的一个以上的归类区信息。
在此基础上,用户交互模块400,还可以用于将服务调度模块410发送来的搜索结果集合以及用户引导模块发送来的用户引导数据,利用预设的展现模板进行渲染后,形成HTML数据返回给用户使用的浏览器,该渲染的功能可以通过图4中用户交互模块400中的渲染子模块405实现。
上述的用户引导模块440可以设置为一个独立的模块,也可以设置在高级通用检索模块420、通用检索模块410或用户交互模块400中,在图4中以用户引导模块440设置为一个独立的模块为例。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (32)
1.一种结构化数据搜索的方法,其特征在于,该方法包括:
A、接收具备结构化数据搜索需求的搜索请求,解析所述搜索请求中的统一资源标识符URI,确定所述URI对应的策略包;
B、根据所述策略包中的服务属性信息,分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合;
C、如果步骤B从多于1个结构化数据库中获取搜索结果集合,则按照所述策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理;
D、将归并处理后得到的搜索结果集合提供给用户。
2.根据权利要求1所述的方法,其特征在于,步骤A中所述接收具备结构化数据搜索需求的搜索请求具体包括:
接收到来自浏览器的搜索请求后,对搜索请求中包含的搜索词进行语义分析,判断该搜索词是否命中预设的结构化需求词典,如果是,则确定所述搜索请求具备结构化数据搜索需求;或者,
接收到来自浏览器的搜索请求后,判断所述搜索请求是否为中间页的搜索请求,如果是,则确定所述搜索请求具备结构化数据搜索需求;其中,所述中间页的搜索请求是浏览器在用户点击垂直搜索结果时发送来的。
3.根据权利要求1所述的方法,其特征在于,步骤A中确定所述URI对应的策略包具体包括:
对所述URI进行解析,获取所述URI中携带的服务类型信息;
确定所述服务类型信息对应的策略包;所述策略包是根据所述服务类型的行业特点预先配置的。
4.根据权利要求1所述的方法,其特征在于,所述策略包中还包括:调度策略信息;
所述调度策略信息包括以下所列之一或任意组合:服务超时控制策略、丢结果的跨数据库重查策略以及搜索结果的数量控制策略;
其中,所述服务超时控制策略包括:当搜索时长超过服务属性对应的最大搜索时长时,从同一服务属性对应的同一结构化数据库或同一服务属性对应的其他结构化数据库中重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在所述最大搜索时长内;或者,当搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知;
所述丢结果的跨数据库重查策略包括:当针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,重新在所述某服务属性对应的其他结构化数据库中重新进行搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内;其中,N为预设的正整数;
所述搜索结果的数量控制策略用于控制从每一个结构化数据库中获得的搜索结果数量,或者控制返回给用户的搜索结果集合中的搜索结果数量。
5.根据权利要求1所述的方法,其特征在于,所述策略包中还包括屏蔽等级信息;
在所述步骤B中还包括:根据所述屏蔽等级信息,在获取的各搜索结果集合中进行屏蔽处理,屏蔽的内容包括以下所列之一或组合:具有黄色内容的搜索结果、具有反动内容的搜索结果。
6.根据权利要求1所述的方法,其特征在于,步骤C中按照所述策略包中的结果归并机制,对获取到的搜索结果集合进行归并处理具体包括:
将步骤B获取的各搜索结果集合归并成一个搜索结果集合;或者,
分别保持步骤B获取的各搜索结果集合但归并为一个数据包。
7.根据权利要求1所述的方法,其特征在于,步骤B中所述分别从各服务属性信息对应的结构化数据库中获取搜索请求对应的搜索结果集合具体包括:
利用从所述URI中解析出的关键词构建查询表达式,利用构建的查询表达式分别在各服务属性信息对应的结构化数据库中进行搜索,获得各服务属性信息对应的搜索结果集合。
8.根据权利要求7所述的方法,其特征在于,利用从所述URI中解析出的关键词构建查询表达式具体包括:
将所述解析出的关键词进行逻辑拼装和优化后,形成所述查询表达式;
其中,所述优化包括以下所列之一或任意组合:同义词扩展、地域扩展、关键词细化。
9.根据权利要求8所述的方法,其特征在于,所述地域扩展所使用的地域信息为:从所述URI中解析出的用户IP所对应的地域信息,或者,cookie记录的地域信息。
10.根据权利要求1所述的方法,其特征在于,在所述步骤B中还包括:在获取的各搜索结果集合中,对搜索结果进行排序;
其中采用的排序策略包括:按照搜索结果与所述搜索请求的相关性从高到低的顺序对搜索结果进行排序。
11.根据权利要求10所述的方法,其特征在于,所述排序策略进一步包括:
根据所述获取的各搜索结果集合中各搜索结果的特征状况结合预先设置的特征排序权值,对搜索结果进行排序,其中所述特征包括以下所列之一或任意组合:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性;或者,
按照预设的聚类策略,对所述获取的各搜索结果集合中的搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。
12.根据权利要求1所述的方法,其特征在于,在所述步骤C中还包括:
对归并处理后得到的搜索结果集合进行优化处理,具体包括以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类;
其中,所述基于摘要判断的过滤为:判断所述归并处理后得到的搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求的搜索结果从所述归并处理后得到的搜索结果集合中删除;
所述搜索结果的摘要飘红为:将所述归并处理后得到的搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色;
所述搜索结果的内容聚类为:基于预设的聚类策略,将所述归并处理后得到的搜索结果集合中的搜索结果进行聚类。
13.根据权利要求11或12所述的方法,其特征在于,所述聚类策略包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
14.根据权利要求1所述的方法,其特征在于,该方法还包括:对步骤B获取的各搜索结果集合中搜索结果的指定属性字段进行统计,得到各搜索结果集合对应的统计结果。
15.根据权利要求14所述的方法,其特征在于,所述策略包中还包括用户引导策略;
如果所述用户引导策略指示需要进行用户引导,则在执行所述步骤D之前还包括:
利用各搜索结果集合对应的统计结果,对所述归并处理后得到的搜索结果集合中的搜索结果进行分类,形成用户引导优化数据;该用户引导优化数据中包含分类后得到的一个以上的归类区信息。
16.根据权利要求15所述的方法,其特征在于,所述步骤D具体包括:
将所述归并处理后得到的搜索结果集合以及所述用户引导优化数据,利用预设的展现模板进行渲染后,形成超文本标记语言HTML数据返回给所述用户使用的浏览器。
17.一种结构化数据搜索的装置,其特征在于,该装置包括:用户交互模块、服务调度模块、通用检索模块和基本检索模块;
所述用户交互模块,用于接收具备结构化数据搜索需求的搜索请求,解析所述搜索请求中的统一资源标识符URI,确定所述URI对应的策略包;将所述服务调度模块发送来的搜索结果集合提供给用户;
所述服务调度模块,用于根据所述策略包中的服务属性信息,确定所述服务属性信息对应的结构化数据库,将所述搜索请求的关键词包含在垂直服务请求中发送给确定的结构化数据库所对应的通用检索模块;如果确定的结构化数据库所对应的通用检索模块多于1个,则按照所述策略包中的结果归并机制,将所述通用检索模块发送来的各搜索结果集合进行归并处理,将归并处理后得到的搜索结果集合发送给所述用户交互模块;
所述通用检索模块,用于接收到垂直服务请求后,请求对应的基本检索模块;将所述通用检索模块返回的搜索结果集合发送给所述服务调度模块;
所述基本检索模块,用于被所述通用检索模块请求时,在结构化数据库中进行搜索,并将搜索结果集合返回给所述通用检索模块。
18.根据权利要求17所述的装置,其特征在于,所述用户交互模块具体包括:用户交互子模块、需求识别子模块、解析子模块和策略包确定子模块;
所述用户交互子模块,用于接收来自浏览器的搜索请求,将该搜索请求发送给需求识别子模块;将所述服务调度模块发送来的搜索结果集合发送给所述浏览器;
所述需求识别子模块,用于识别所述搜索请求是否具备结构化数据搜索需求;
所述解析子模块,用于对所述搜索请求中的URI进行解析,获取所述URI中携带的服务类型信息;
所述策略包确定子模块,用于在所述需求识别子模块识别出所述搜索请求具备结构化数据搜索需求时,确定所述解析子模块获取的所述服务类型信息对应的策略包,所述策略包是根据所述服务类型的行业特点预先配置的。
19.根据权利要求18所述的装置,其特征在于,所述需求识别子模块对所述搜索请求中包含的搜索词进行语义分析后,判断所述搜索词是否命中预设的结构化需求词典,如果是,则确定所述搜索请求具备结构化数据搜索需求;或者,
判断所述搜索请求是否为中间页的搜索请求,如果是,则确定所述搜索请求具备结构化数据搜索需求;其中,所述中间页的搜索请求是浏览器在用户点击垂直搜索结果时发送来的。
20.根据权利要求17所述的装置,其特征在于,所述策略包中还包括:调度策略信息;
所述服务调度模块,还用于根据所述策略包中的调度策略信息,对搜索过程进行调度控制;
所述调度策略信息包括以下所列之一或任意组合:服务超时控制策略、丢结果的跨数据库重查策略以及搜索结果的数量控制策略;
其中,所述服务超时控制策略包括:当搜索时长超过服务属性对应的最大搜索时长时,将所述垂直服务请求重新发送给同一通用检索模块,或者重新发送给同一服务属性对应的其他通用检索模块以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索时长在所述最大搜索时长内;或者,当搜索时长超过服务属性对应的最大搜索时长时,直接向用户返回搜索超时的通知;
所述丢结果的跨数据库重查策略包括:当针对某服务属性连续N次在同一结构化数据库中的搜索结果丢失状况达到预设的程度时,将所述垂直服务请求重新发送给所述某服务属性对应的其他通用检索模块以进行重新搜索,直至重新搜索次数达到预设的重查次数阈值或者搜索结果丢失状况在预设的程度内;其中,N为预设的正整数;
所述搜索结果的数量控制策略用于控制从每一个结构化数据库中获得的搜索结果数量,或者控制返回给用户的搜索结果集合中的搜索结果数量。
21.根据权利要求17所述的装置,其特征在于,所述策略包中还包括屏蔽等级信息;
所述基本检索模块,还用于在结构化数据库中进行搜索后,根据所述屏蔽等级信息,在搜索结果集合中进行屏蔽处理,屏蔽的内容包括以下所列之一或组合:具有黄色内容的搜索结果、具有反动内容的搜索结果。
22.根据权利要求17所述的装置,其特征在于,所述服务调度模块按照所述策略包中的结果归并机制,将各通用检索模块发送来的搜索结果集合归并成一个搜索结果集合发送给用户交互模块;或者,分别保持所述通用检索模块发送来的各搜索结果集合但合并为一个数据包发送给所述用户交互模块。
23.根据权利要求17所述的装置,其特征在于,所述通用检索模块接收到垂直服务请求后,利用所述用户交互模块从所述URI中解析出的关键词构建查询表达式,将构建的查询表达式发送给对应的基本检索模块;
所述基本检索模块利用所述查询表达式在结构化数据库中进行检索。
24.根据权利要求23所述的装置,其特征在于,所述通用检索模块具体将所述用户交互模块从所述URI中解析出的关键词进行逻辑拼装和优化后,形成所述查询表达式;
其中,所述优化包括以下所列之一或任意组合:同义词扩展、地域扩展、关键词细化。
25.根据权利要求24所述的装置,其特征在于,所述用户交互模块,还用于从所述URI中解析出用户IP,或者获取所述搜索请求对应的cookie;
所述通用检索模块在进行所述地域扩展时使用的地域信息为:所述用户IP对应的地域信息,或者,所述cookie记录的地域信息。
26.根据权利要求17所述的装置,其特征在于,所述基本检索模块具体包括:搜索子模块、排序子模块和反馈子模块;
所述搜索子模块,用于在所述基本检索模块被所述通用检索模块请求时,利用所述搜索请求的关键词在结构化数据库中进行搜索;
所述排序子模块,用于在所述搜索子模块获得的搜索结果集合中,对搜索结果进行排序,将排序后的搜索结果集合提供给所述反馈子模块;其中采用的排序策略包括:按照搜索结果与所述搜索请求的相关性从高到低的顺序对搜索结果进行排序;
所述反馈子模块,用于将搜索结果集合返回给所述通用检索模块。
27.根据权利要求26所述的装置,其特征在于,所述排序策略进一步包括;
根据所述获取的各搜索结果集合中各搜索结果的特征状况结合预先设置的特征排序权值,对搜索结果进行排序,其中所述特征包括以下所列之一或任意组合:搜索结果的资源热度、搜索结果来源的权威性、搜索结果的时效性;或者,
按照预设的聚类策略,对所述获取的各搜索结果集合中的搜索结果进行聚类,在聚类后得到的各组搜索结果中对排序进行打散处理。
28.根据权利要求17所述的装置,其特征在于,所述通用检索模块,还用于对归并处理后得到的搜索结果集合进行优化处理,发送给所述用户交互模块的搜索结果集合为优化处理后的搜索结果集合;所述优化处理具体包括以下所列之一或任意组合:基于摘要判断的过滤、搜索结果的摘要飘红以及搜索结果的内容聚类;
其中,所述基于摘要判断的过滤为:判断所述归并处理后得到的搜索结果集合中搜索结果的摘要信息是否满足预设要求,将摘要信息不满足预设要求的搜索结果从所述归并处理后得到的搜索结果集合中删除;
所述搜索结果的摘要飘红为:将所述归并处理后得到的搜索结果集合中搜索结果的摘要信息的颜色属性设置为红色;
所述搜索结果的内容聚类为:基于预设的聚类策略,将所述归并处理后得到的搜索结果集合中的搜索结果进行聚类。
29.根据权利要求27或28所述的装置,其特征在于,所述聚类策略包括:按照搜索结果与搜索请求的相关度、搜索结果的来源或搜索结果的发布时间进行聚类。
30.根据权利要求26所述的装置,其特征在于,所述基本检索模块还包括:
统计子模块,用于对所述搜索子模块获得的搜索结果集合中搜索结果的指定属性字段进行统计,得到搜索结果集合对应的统计结果。
31.根据权利要求30所述的装置,其特征在于,所述策略包中还包括用户引导策略;
该装置还包括:用户引导模块,用于如果所述用户引导策略指示需要进行用户引导,则利用各统计子模块的统计结果,将所述服务调度模块发送给所述用户交互模块的搜索结果集合进行搜索结果的分类,形成用户引导优化数据,将形成的用户引导优化数据发送给所述用户交互模块;其中所述用户引导优化数据包含分类后得到的一个以上的归类区信息。
32.根据权利要求31所述的装置,其特征在于,所述用户交互模块,还用于将所述服务调度模块发送来的搜索结果集合以及所述用户引导模块发送来的用户引导数据,利用预设的展现模板进行渲染后,形成超文本标记语言HTML数据返回给所述用户使用的浏览器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100048115A CN102117320B (zh) | 2011-01-11 | 2011-01-11 | 一种结构化数据搜索的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100048115A CN102117320B (zh) | 2011-01-11 | 2011-01-11 | 一种结构化数据搜索的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102117320A CN102117320A (zh) | 2011-07-06 |
CN102117320B true CN102117320B (zh) | 2012-07-25 |
Family
ID=44216091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100048115A Active CN102117320B (zh) | 2011-01-11 | 2011-01-11 | 一种结构化数据搜索的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102117320B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105830060A (zh) * | 2014-02-06 | 2016-08-03 | 富士施乐株式会社 | 信息处理设备、信息处理程序、存储介质和信息处理方法 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102890683B (zh) * | 2011-07-21 | 2016-01-20 | 阿里巴巴集团控股有限公司 | 信息提供方法及装置 |
CN102968418A (zh) * | 2011-09-01 | 2013-03-13 | 阿里巴巴集团控股有限公司 | 网站信息检索方法和*** |
CN103064833B (zh) * | 2011-10-18 | 2016-03-16 | 阿里巴巴集团控股有限公司 | 一种清理数据库历史数据的方法和*** |
CN103186569B (zh) * | 2011-12-28 | 2016-07-13 | 北京百度网讯科技有限公司 | 一种需求识别方法及需求识别*** |
CN103218364B (zh) * | 2012-01-19 | 2016-05-04 | 阿里巴巴集团控股有限公司 | 一种搜索方法和*** |
CN103365903B (zh) * | 2012-04-05 | 2019-03-26 | 北京百度网讯科技有限公司 | 一种为搜索引擎获取结构化数据的方法、装置与*** |
CN103049524B (zh) * | 2012-12-20 | 2016-01-06 | 中国科学技术信息研究所 | 同义词检索结果按词义自动聚类方法 |
CN104462104B (zh) * | 2013-09-16 | 2019-03-19 | 华为软件技术有限公司 | 过滤方法和服务器 |
CN106716416B (zh) * | 2014-11-19 | 2018-04-27 | 株式会社英弗麦斯 | 数据检索装置及记录介质 |
CN104750816A (zh) * | 2015-03-30 | 2015-07-01 | 百度在线网络技术(北京)有限公司 | 信息搜索方法和信息搜索装置 |
CN104881447A (zh) * | 2015-05-14 | 2015-09-02 | 百度在线网络技术(北京)有限公司 | 搜索方法及装置 |
CN106326317A (zh) * | 2015-07-09 | 2017-01-11 | ***通信集团山西有限公司 | 数据处理方法及装置 |
CN106708835A (zh) * | 2015-08-11 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种数据表的分类方法和装置 |
CN107423305A (zh) * | 2016-05-24 | 2017-12-01 | 北大方正集团有限公司 | 热点专题发布方法及装置 |
CN107515886B (zh) * | 2016-06-17 | 2020-11-24 | 阿里巴巴集团控股有限公司 | 一种数据表的识别方法、装置和*** |
CN106446069B (zh) * | 2016-09-07 | 2019-10-15 | 北京百度网讯科技有限公司 | 基于人工智能的推送信息的方法和装置 |
CN108228643A (zh) * | 2016-12-21 | 2018-06-29 | 北京视联动力国际信息技术有限公司 | 一种检索方法及*** |
JP6672241B2 (ja) * | 2017-11-14 | 2020-03-25 | 株式会社ぐるなび | 情報処理装置、情報処理方法、プログラムおよび情報処理システム |
CN108470040B (zh) * | 2018-02-11 | 2021-03-09 | 中国石油天然气股份有限公司 | 一种非结构化数据的入库方法及装置 |
CN110363605A (zh) * | 2018-04-10 | 2019-10-22 | 北京京东尚科信息技术有限公司 | 信息搜索方法和装置及计算机可读存储介质 |
CN108900574A (zh) * | 2018-06-04 | 2018-11-27 | 上海市疾病预防控制中心 | 基于用户个性化需求的一站式搜索推送方法 |
CN109614515B (zh) * | 2018-10-30 | 2020-09-01 | 北京奇艺世纪科技有限公司 | 视频搜索评价方法和*** |
CN109669959B (zh) * | 2018-11-27 | 2020-08-18 | 武汉达梦数据库有限公司 | 一种结构化数据库的一键查询方法和装置 |
CN110334273A (zh) * | 2019-05-30 | 2019-10-15 | 重庆金融资产交易所有限责任公司 | 基于通用搜索平台的服务搜索方法、装置和计算机设备 |
CN111223533B (zh) * | 2019-12-24 | 2024-02-13 | 深圳市联影医疗数据服务有限公司 | 一种医疗数据检索方法及*** |
CN111931112A (zh) * | 2020-08-27 | 2020-11-13 | 优学汇信息科技(广东)有限公司 | 一种基于大数据的关键字检索***及检索方法 |
CN112084774B (zh) | 2020-09-08 | 2021-07-20 | 百度在线网络技术(北京)有限公司 | 数据搜索方法、装置、***、设备和计算机可读存储介质 |
CN114491253B (zh) * | 2022-01-21 | 2023-09-26 | 北京百度网讯科技有限公司 | 观测信息处理方法、装置、电子设备及存储介质 |
CN116204568B (zh) * | 2023-05-04 | 2023-10-03 | 华能信息技术有限公司 | 一种数据挖掘分析方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100541495C (zh) * | 2007-08-03 | 2009-09-16 | 哈尔滨工程大学 | 一种个性化搜索引擎的搜索方法 |
CN101676901A (zh) * | 2008-09-19 | 2010-03-24 | 华为技术有限公司 | 搜索调度方法及搜索服务器 |
CN101477554A (zh) * | 2009-01-16 | 2009-07-08 | 西安电子科技大学 | 基于用户兴趣的个性化元搜索引擎及搜索结果处理方法 |
CN101520798A (zh) * | 2009-03-06 | 2009-09-02 | 苏州锐创通信有限责任公司 | 基于垂直搜索和聚焦爬虫的网页分类技术 |
CN101561814B (zh) * | 2009-05-08 | 2012-05-09 | 华中科技大学 | 基于社会标注的主题爬虫*** |
CN101599089B (zh) * | 2009-07-17 | 2011-05-04 | 中国科学技术大学 | 视频服务网站内容更新信息的自动搜索与抽取***及方法 |
-
2011
- 2011-01-11 CN CN2011100048115A patent/CN102117320B/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105830060A (zh) * | 2014-02-06 | 2016-08-03 | 富士施乐株式会社 | 信息处理设备、信息处理程序、存储介质和信息处理方法 |
CN105830060B (zh) * | 2014-02-06 | 2020-12-11 | 富士施乐株式会社 | 信息处理设备、信息处理程序、存储介质和信息处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102117320A (zh) | 2011-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102117320B (zh) | 一种结构化数据搜索的方法和装置 | |
CN105718515B (zh) | 数据存储***及其方法和数据分析***及其方法 | |
US10025880B2 (en) | Methods for integrating semantic search, query, and analysis and devices thereof | |
CN101111837B (zh) | 查询自动分类的搜索处理 | |
CN102279894B (zh) | 基于语义的查找、集成和提供评论信息的方法及搜索*** | |
CN101320373B (zh) | 网站支撑数据库安全搜索引擎*** | |
CN101151607B (zh) | 用于提供产品评论的方法和*** | |
US6311194B1 (en) | System and method for creating a semantic web and its applications in browsing, searching, profiling, personalization and advertising | |
US7290061B2 (en) | System and method for internet content collaboration | |
US9977827B2 (en) | System and methods of automatic query generation | |
CN101551806B (zh) | 一种个性化网址导航的方法和*** | |
US8751470B1 (en) | Context sensitive ranking | |
US8239387B2 (en) | Structural clustering and template identification for electronic documents | |
CN102073726B (zh) | 搜索引擎***的结构化数据的引入方法和装置 | |
US20110040733A1 (en) | Systems and methods for generating statistics from search engine query logs | |
CN102999586B (zh) | 一种网站推荐的方法和装置 | |
CN101751422A (zh) | 一种移动终端智能搜索的方法、移动终端和服务器 | |
US20030088639A1 (en) | Method and an apparatus for transforming content from one markup to another markup language non-intrusively using a server load balancer and a reverse proxy transcoding engine | |
US20080243786A1 (en) | System and method of goal-oriented searching | |
CN101655943A (zh) | 企业应用集成工作流管理方法及*** | |
WO2007071143A1 (fr) | Procédé et appareil destinés à émettre des informations réseau | |
CN102141990A (zh) | 一种搜索方法和装置 | |
CN102402619A (zh) | 一种搜索方法和装置 | |
AU2010295607A1 (en) | Systems and methods for providing advanced search result page content | |
CN101118554A (zh) | 智能交互式问答***及其处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |