数据检索的方法和装置制造方法及图纸

技术编号:18018985 阅读:63 留言:0更新日期:2018-05-23 05:13
本说明书提供一种数据检索的方法,被检索的数据包括至少一个数据源,所述方法包括:接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源;根据检索策略生成每个检索对象的执行单位;所述执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索,得到结果数据;运行每个执行单位;根据执行单位的结果数据,返回检索结果。

【技术实现步骤摘要】
数据检索的方法和装置
本说明书涉及数据处理
,尤其涉及一种数据检索的方法和装置。
技术介绍
随着互联网的发展,各种基于网络进行的活动都在源源不断的产生数据。数据挖掘技术能够从大量的数据中发现有价值的知识、模式、规则等信息,为科学研究、商业决策、过程控制等提供辅助支持。数据挖掘技术的普及使得企业的业务越来越依赖于对数据的利用,而对数据的利用以在大量数据中检索出需要的数据为基础。通常企业会同时运行多个业务系统来实现各种业务过程,每个业务系统出于各自的业务目的需要利用不同的数据,具有各自的检索逻辑,并且检索逻辑可能随业务的进行而不断变化,对数据检索的实现提出了挑战。
技术实现思路
有鉴于此,本说明书提供一种数据检索的方法,被检索的数据包括至少一个数据源,所述方法包括:接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源;根据检索策略生成每个检索对象的执行单位;所述执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索,得到结果数据;运行每个执行单位;根据执行单位的结果数据,返回检索结果。本说明书还提供了一种数据检索的装置,被检索的数据包括至少一个数据源,所述装置包括:检索请求接收单元,用于接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源;执行单位生成单元,用于根据检索策略生成每个检索对象的执行单位;所述执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索,得到结果数据;执行单位运行单元,用于运行每个执行单位;检索结果返回单元,用于根据执行单位的结果数据,返回检索结果。本说明书提供的一种计算机设备,包括:存储器和处理器;所述存储器上存储有可由处理器运行的计算机程序;所述处理器运行所述计算机程序时,执行上述数据检索的方法所述的步骤。本说明书提供的一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述数据检索的方法所述的步骤。由以上技术方案可见,本说明书的实施例中,以检索策略来指定检索对象和检索条件,在收到携带有检索策略的检索请求后,为每个检索对象生成执行单位,并运行每个执行单位以检索条件对检索对象进行检索,返回采用每个执行单位的结果数据生成的检索结果,使得不同的业务系统可以采用符合各自业务需求的检索策略,调用运行本说明书实施例的功能模块,即可检索出所需要的数据,而无需分别实现和维护各自用于检索的功能模块,在检索需求变化时也只需修改检索策略而不必更改用于检索的功能模块的实现,不仅极大的降低了开发人员的工作量,而且能够随时满足业务变化的要求。附图说明图1是本说明书实施例中检索功能模块与业务系统、被检索数据的关系示意图;图2是本说明书实施例中一种数据检索的方法的流程图;图3是本说明书应用示例中召回系统的逻辑层次结构、以及与业务系统及数据库的关系示意图;图4是运行本说明书实施例的设备的一种硬件结构图;图5是本说明书实施例中一种数据检索的装置的逻辑结构图。具体实施方式本说明书的实施例提出一种新的数据检索的方法,在收到包括检索策略的检索请求后,按照检索策略中指定的检索对象和检索条件,生成每个检索对象的执行单位,运行每个执行单位从检索对象的数据源查找出符合检索条件的结果数据,按照结果数据生成并返回检索结果,使得不同的业务系统可以通过不同的检索策略发起检索请求,来得到符合其业务需求的检索结果,实现了通用的检索功能,不再需要由每个业务系统分别编写和维护各自的检索逻辑,不仅大大减少了开发人员的工作量,而且在业务的检索需求变化时只需更改检索策略即可快速满足新的需求。本说明书的实施例可以作为一个功能模块(如应用程序、子程序、过程等),运行在任何具有计算和存储能力的设备上,如手机、平板电脑、PC(PersonalComputer,个人电脑)、笔记本、服务器等设备;也可以由运行在两个或两个以上设备上的功能模块来实现本说明书实施例中的各项功能;不做限定。方便起见,将运行本说明书实施例的功能模块称为检索功能模块。本说明书的实施例中,检索功能模块与被检索的数据、使用检索功能的若干个系统(以业务系统为例进行说明,不限于业务系统)之间的关系如图1所示,不同的业务系统可以检索功能模块提供的接口,向检索功能发起检索请求,在检索请求中明确其需求,检索功能模块按照检索请求,在被检索的数据中找出符合业务系统需求的数据,并返回给发起请求的业务系统。本说明书的实施例中,被检索的数据包括一个到多个数据源,数据源可以是任何一种可以独立检索的数据记录的集合(如数据库表),除存储的原始数据外,数据源中还可以包括以原始数据为基础,由一种到多种索引引擎生成的各种索引。相同的原始数据可以采用不同的索引引擎来生成索引,一种索引引擎可以生成多个不同的索引。检索功能模块可以直接对原始数据进行检索,也可以通过检索由对应的索引引擎支持的索引来筛选出需要的原始数据。本说明书实施例对索引引擎和索引均没有限制,例如索引可以是正排索引、倒排索引、图索引、kv(key-value,键-值)、kkv(key-key-value,键-键-值)等,索引引擎可以是ha3(哈三)搜索引擎、hbase(hadoopdatabase,分布式计算数据库)存储引擎、geabase(graphexplorationandanalyticsdatabase,分布式实时图数据库)图计算引擎、igraph(关系网络图)图计算引擎、tair(结构数据存储系统)存储引擎等。本说明书的实施例中,数据检索的方法的流程如图2所示,该方法应用在检索功能模块上。步骤210,接收检索请求。检索功能模块向使用检索功能的系统提供接口,供使用检索功能的系统向其发起检索请求。使用检索功能的系统通过检索策略来描述自己的检索需求,并将检索策略封装在检索请求中传递给检索功能模块。根据检索功能模块和使用检索功能的系统在实际应用场景中的具体实现,检索请求可以是报文、调用指令、消息等等,不做限定。使用检索功能的系统在检索策略中指定至少一个检索对象,并为每个检索对象指定其检索条件。其中,检索对象可以是一个数据源,如某张数据库表;对建立有由一个到多种索引引擎支持的索引的数据源,检索对象可以是一个数据源和一种索引引擎,如某张数据库表的ha3搜索引擎;换言之,一个检索对象对应于一个数据源,或者对应于一个数据源的一种索引引擎。检索条件用来描述将检索对象的哪些数据筛选出来,可以根据数据源存储数据的字段形式和使用检索功能的系统的业务需求来确定,不做限定,例如对用户个人信息数据表,检索条件可以是“年龄在30到40岁之间并且居住地为某个区的男性”。步骤220,根据检索策略生成每个检索对象的执行单位。检索功能模块在从检索请求中提取出检索策略后,为检索策略中的每个检索对象生成一个执行单位,每个执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索、或对所属检索对象数据源的所属检索对象索引引擎支持的索引进行检索(对包括一个数据源和一种索引引擎的检索对象),得到结果数据。本说明书的实施例中,执行单位是一个可以独立于其他执行单位运行的处理过程,可以用来完成某个任务或某个任务中的本文档来自技高网...
数据检索的方法和装置

【技术保护点】
一种数据检索的方法,被检索的数据包括至少一个数据源,所述方法包括:接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源;根据检索策略生成每个检索对象的执行单位;所述执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索,得到结果数据;运行每个执行单位;根据执行单位的结果数据,返回检索结果。

【技术特征摘要】
1.一种数据检索的方法,被检索的数据包括至少一个数据源,所述方法包括:接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源;根据检索策略生成每个检索对象的执行单位;所述执行单位用来以所属检索对象的检索条件,对所属检索对象的数据源进行检索,得到结果数据;运行每个执行单位;根据执行单位的结果数据,返回检索结果。2.根据权利要求1所述的方法,所述检索策略包括:至少两个检索对象及其检索条件,以及指定检索顺序;所述运行每个执行单位,包括:按照指定检索顺序运行检索对象的执行单位。3.根据权利要求2所述的方法,所述指定检索顺序包括:串行检索、并行检索、或串行检索与并行检索的组合。4.根据权利要求2所述的方法,所述检索对象的数据源包括:顺序在所述检索对象之前的其他检索对象的结果数据。5.根据权利要求1所述的方法,至少一个所述数据源包括由至少一种索引引擎支持的索引;至少一个所述检索对象包括一个数据源和一种索引引擎;所述包括一个数据源和一种索引引擎的检索对象的执行单位,用来以所属检索对象的检索条件,对所属检索对象数据源的所属检索对象索引引擎支持的索引进行检索,得到结果数据。6.根据权利要求5所述的方法,所述包括一个数据源和一种索引引擎的检索对象的执行单位,用来以所属检索对象的数据源和检索条件为参数,调用所述检索对象的索引引擎的访问算子,由被调用访问算子根据检索条件生成检索指令、并对所述数据源的所述索引引擎支持的索引执行检索指令,返回所述数据源的所述索引引擎支持的索引中符合检索条件的结果数据。7.根据权利要求5所述的方法,所述索引引擎包括:哈三ha3搜索引擎、分布式计算数据库hbase存储引擎、分布式实时图数据库geabase图计算引擎、关系网络图igraph图计算引擎或结构数据存储系统tair存储引擎;所述索引包括:正排索引、倒排索引、图索引、键-值kv或键-键-值kkv。8.根据权利要求1所述的方法,所述检索策略还包括:检索对象的结果排序条件;所述执行单位用来以所属检索对象的检索条件,在所属检索对象的数据源中查找符合检索条件的记录,按照所属检索对象的结果排序条件对符合检索条件的记录进行排序后,得到结果数据。9.根据权利要求1所述的方法,所述执行单位包括:执行者actor。10.一种数据检索的装置,被检索的数据包括至少一个数据源,所述装置包括:检索请求接收单元,用于接收检索请求,所述检索请求中包括检索策略,检索策略包括至少一个检索对象及其检索条件,每个检索对象包括一个数据源...

【专利技术属性】
技术研发人员:张晓明魏宏李涛葛俊
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1