搜索引擎查询串的生成方法和装置以及搜索引擎系统制造方法及图纸

技术编号:10802742 阅读:74 留言:0更新日期:2014-12-24 10:11
本申请涉及搜索引擎查询串的生成方法和装置以及搜索引擎系统。所述方法包括:根据接收到的用户查询请求生成基本查询串;基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;以及将所述多个查询子串拼接以生成所述搜索引擎查询串。根据本申请的技术方案,能够动态地生成搜索引擎查询串,当需要修改或维护时,只需要修改配置文件中的配置参数,就可以容易实现。不仅提高了引擎查询性能和降低了引擎维护成本,而且使得避免外部对搜索引擎的恶意操作。

【技术实现步骤摘要】
【专利摘要】本申请涉及搜索引擎查询串的生成方法和装置以及搜索引擎系统。所述方法包括:根据接收到的用户查询请求生成基本查询串;基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;以及将所述多个查询子串拼接以生成所述搜索引擎查询串。根据本申请的技术方案,能够动态地生成搜索引擎查询串,当需要修改或维护时,只需要修改配置文件中的配置参数,就可以容易实现。不仅提高了引擎查询性能和降低了引擎维护成本,而且使得避免外部对搜索引擎的恶意操作。【专利说明】搜索引擎查询串的生成方法和装置以及搜索引擎系统
本申请涉及数据处理领域,具体地涉及搜索引擎查询串的生成方法和装置以及搜索引擎系统。
技术介绍
随着搜索经济的崛起,人们越来越关注全球各大搜索引擎的性能、技术和日流量等特性,因此搜索引擎的瓶颈以及性能提升逐步成为目前的研究热点。 在某些搜索引擎(如垂直搜索引擎)中,用户向搜索引擎提交查询时,用户向搜索引擎提交查询关键词(即自然语言,例如MP3)。而搜索引擎内部进行搜索时只接受或识别特定格式的查询串(即,机器语言),例如,q= OR AND &f ilter: customer_id=54321&sorttype: +update_time&count=12。因此,需要对用户的查询关键词进行相应处理以生成搜索引擎内部可识别的搜索引擎查询串。 目前大多数搜索引擎是通过其前端系统事先根据不同Pid(应用类型或业务类型)的查询串逻辑生成相应的模板,然后在实际应用中套用与输入的查询关键词相关的Pid所对应的模板来生成搜索引擎查询串。这里需要说明的是,Pid用于标识搜索的应用类型,一般对应于一种业务线。 目前这种方式存在如下缺点: (I)为了保证满足各种业务需求,这种与业务类型对应的模板的数量通常很大,当需要修改或维护时,往往不能随应用需求的变更或引擎接口的变更而快速响应,不利于维护且维护成本也很高。 (2)由于在搜索引擎的前端完成搜索引擎查询串的生成,且搜索引擎查询串往往比较冗长复杂,所以搜索引擎的前端与后端之间交互复杂且不友好。另外,由于使用模板生成搜索引擎查询串,所以对外接口可扩展性差。此外,引擎对外暴露内部查询语法,容易让不法或误操作的使用方对弓I擎造成恶意或误攻击。
技术实现思路
针对上述问题,本申请的主要目的在于提供一种能够自动或动态地生成搜索引擎查询串的技术,以提高引擎查询性能和降低引擎维护成本,并使得避免外部对搜索引擎的恶意操作。 根据本申请的一个方面的实施例,提供一种搜索引擎查询串的生成方法,包括:根据接收到的用户查询请求生成基本查询串;基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;以及将所述多个查询子串拼接以生成所述搜索引擎查询串。 根据本申请的实施例,该方法中,所述公共逻辑和接口逻辑可以按照如下方式配置的:将针对各种应用类型的搜索引擎查询串生成逻辑中的所有处理按照功能划分成多个处理模块;以及针对所述多个处理模块,配置对于各应用类型共有的公共逻辑和各应用类型特有的相应接口逻辑。 根据本申请的实施例,该方法中,所述基本查询串可以包括用户搜索词和所涉及的应用类型。 根据本申请的实施例,该方法中,将所述多个查询子串拼接以生成所述搜索引擎查询串的步骤中,可以使用分隔符将所述多个查询子串进行拼接以生成所述搜索引擎查询串O 根据本申请的实施例,该方法中,所述接口逻辑可以被配置为包括与应用类型对应的条件逻辑和与条件逻辑对应的动作逻辑。 根据本申请的实施例,该方法中,基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串的步骤可以进一步包括:查找与基本查询串中的应用类型参数对应的条件逻辑,从而查找到与该条件逻辑对应的动作逻辑;以及根据查找到的动作逻辑,调用并执行相关处理模块的接口逻辑部分和公共逻辑部分,从而生成与相关处理模块分别对应的各个查询子串。 根据本申请的另一方面的实施例,提供一种搜索引擎查询串的生成装置,其特征在于,包括:基本查询串生成模块,用于根据接收到的用户查询请求生成基本查询串;查询子串生成模块,用于基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;以及拼接模块,用于将所述多个查询子串拼接以生成所述搜索引擎查询串。 根据本申请的又一方面的实施例,提供一种搜索引擎系统,其特征在于,包括:前端模块,用于根据接收到的用户查询请求生成基本查询串;查询串重写模块,用于:基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;和将所述多个查询子串拼接以生成所述搜索引擎查询串;以及搜索模块,用于根据所述搜索引擎查询串搜索相关内容。 根据本申请的技术方案,能够动态地生成搜索引擎查询串,而无需套用和维护大量模板。当需要修改或维护时,只需要修改配置文件中的配置参数,就可以容易实现。不仅提高了引擎查询性能和降低了引擎维护成本,而且使得避免外部对搜索引擎的恶意操作。 【专利附图】【附图说明】 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中: 图1示出根据本申请一个实施例的搜索引擎查询串的生成方法的流程图; 图2示出根据本申请一个实施例的配置文件的示意结构图; 图3示出根据本申请一个实施例的生成各个查询子串的方法的流程图; 图4示出根据本申请一个实施例的搜索引擎查询串的生成装置的示意性结构框图;以及 图5示出根据本申请一个实施例的搜索引擎系统的示意性结构框图。 【具体实施方式】 本申请的主要思想在于,将搜索引擎中各种应用类型的搜索引擎查询串生成逻辑按照诸如功能之类的某种规则划分成各个处理模块,并且根据各个处理模块共有的处理逻辑来配置公共逻辑配置文件,并根据各个处理模块特有的处理逻辑来针对各个应用类型配置相应的接口逻辑配置文件。在实际使用时,根据所配置的公共逻辑和接口逻辑配置文件执行相关处理模块的处理来生成相应的各个查询子串,然后将这些查询子串拼接在一起来形成符合搜索引擎查询语法(或适用于搜索引擎内部使用)的搜索引擎查询串。由此使得引擎对外提供的接口是一个可灵活修改的配置文件,从而可以动态地生成搜索引擎查询串,便于引擎的维护并且降低引擎维护成本。 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整的描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。 参考图1,图1示出根据本申请一个实施例的搜索引擎查询串的生成方法的流程图。 本申请的技术场景可以是:用户通过在搜索引擎提供的用户界面中输入搜索词来发起用户查询请求。然而用户的查询请求不能被搜索引擎直接使用并进行搜索,在搜索引擎搜索前,需要对用户的查询请求进行预处理以使得符合搜索引擎查询语法,以便搜索引擎识别,并且使得搜索效率高且搜索结果更好地满足用户需求。经这种预处理后的结果即为搜索引擎查本文档来自技高网
...
搜索引擎查询串的生成方法和装置以及搜索引擎系统

【技术保护点】
一种搜索引擎查询串的生成方法,其特征在于,包括:根据接收到的用户查询请求生成基本查询串;基于基本查询串,根据配置文件中包括的公共逻辑和接口逻辑生成多个查询子串;以及将所述多个查询子串拼接以生成所述搜索引擎查询串。

【技术特征摘要】

【专利技术属性】
技术研发人员:李娟娟李俊良吴德
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1