掌桥专利:专业的专利平台
掌桥专利
首页

一种数据检索系统

文献发布时间:2023-06-19 09:54:18


一种数据检索系统

技术领域

本发明涉及计算机技术领域,尤其涉及一种数据检索系统。

背景技术

随着计算机技术的发展,数据量和数据维度逐渐增多,数据库中的数据量通常能达到百亿级别,甚至千亿级别。当需要从现有的数据检索系统中搜索检索数据时,针对一个维度的数据进行搜索查询并进行聚合,通常需要几秒钟甚至二十几秒去申请资源,消耗内存较大,对结构化查询语言(Structured Query Language,简称SQL)的支持能力也较弱。而现有数据分析通常要对多个维度的数据同时进行查询聚合,这便需要几分钟的时间来完成数据检索,数据查询速度慢,检索效率低。由此可知,如何提高数据查询速度和检索效率成为亟待解决的技术问题。

发明内容

本发明目的在于,提供一种数据检索系统,提高了数据查询速度和检索效率,能够实现千亿级数据的秒级筛选。

本发明提供了一种数据检索系统,包括数据库,处理器,存储有计算机程序的存储器,其中,所述数据库中存储有预先构建的数据表,所述数据表配置为倒排索引数据表,所述数据表的每条记录为数据属性信息,所述数据表的字段包括数据id、第一属性信息、第二属性信息…第M属性信息,M为正整数;

当所述计算机程序被处理器执行时,实现以下步骤:

步骤S1、获取数据查询请求;

步骤S2、解析所述数据查询请求,获取数据查询维度信息;

步骤S3、将所述数据查询维度信息转换为与所述数据库查询语言相匹配的第一查询信息;

步骤S4、根据所述第一查询信息、所述数据表和预设的编码映射表生成对应的检索式,所述编码映射表用于配置属性信息和编码值映射关系;

步骤S5、基于所述检索式在所述数据表中进行倒排索引,生成目标数据id列表。

本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种数据检索系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有下列优点:

本发明通过在数据库中预先构建数据表,并将数据查询请求转换为与所述数据库查询语言相匹配的第一查询信息,再基于第一查询信息和数据表构建检索式,然后基于检索式在数据表中进行倒排索引,提高了数据查询速度和检索效率,能够实现千亿级数据的秒级筛选。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。

附图说明

图1为本发明实施例提供的数据检索系统示意图;

图2为本发明实施例提供的数据检索系统数据检索过程流程图。

具体实施方式

为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种数据检索系统的具体实施方式及其功效,详细说明如后。

本发明实施例提供了一种数据检索系统,如图1所示,包括数据库,处理器,存储有计算机程序的存储器,其中,所述数据库中存储有预先构建的数据表,所述数据表配置为倒排索引数据表,所述数据表的每条记录为数据属性信息,所述数据表的字段包括数据id、第一属性信息、第二属性信息…第M属性信息,M为正整数;

当所述计算机程序被处理器执行时,如图2所示,实现以下步骤:

步骤S1、获取数据查询请求;

步骤S2、解析所述数据查询请求,获取数据查询维度信息;

可以理解的是,数据查询维度信息包括目标数据维度以及每一目标数据维度对应的目标值信息。

步骤S3、将所述数据查询维度信息转换为与所述数据库查询语言相匹配的第一查询信息;

步骤S4、根据所述第一查询信息、所述数据表和预设的编码映射表生成对应的检索式,所述编码映射表用于配置属性信息和编码值映射关系;

步骤S5、基于所述检索式在所述数据表中进行倒排索引,生成目标数据id列表。

需要说明的是,由于现有数据库数据数量庞大,可达百亿甚至千亿级别,如果直接根据查询请求在数据库的海量数据中进行查询,获取目标数据id,将花费大量时间,检索效率极低。本发明实施例所述系统通过在数据库中预先构建数据表,并将数据查询请求转换为与所述数据库查询语言相匹配的第一查询信息,再基于第一查询信息和数据表构建检索式,然后基于检索式在数据表中进行倒排索引,提高了数据查询速度和检索效率,能够实现千亿级数据的秒级筛选。

根据本发明,所述系统可以物理实现为一个服务器,也可以实现为包括多个服务器的服务器群组本领域技术人员知晓,服务器的型号、规格等参数并不影响本发明的保护范围。

作为一种实施例,所述数据属性信息包括app安装卸载信息、用户标签信息、位置信息、时间信息等等。可以理解的是,当数据库中存储用户标签信息时,数据量可达到百亿级别,当存储位置信息时,数据量可达到千亿级别。

由于数据量庞大,因此,数据表的构建尤为关键,作为一种实施例,所述数据表的第m属性信息为变长数据类型,所述第m属性信息包括X个由第一m子属性信息编码和第二m子属性信息编码组成的信息编码对,所述第一m子属性信息编码和第二m子属性信息编码之间通过预设的间隔符相连接,其中,m=1,2…M,X为正整数,每一第一m子属性信息编码和第二m子属性信息编码基于所述编码映射表获取。

例如,所述数据表的字段包括多个时间位置属性信息,时间位置属性信息用于表示每一日期内,设备的运行轨迹,假设每间隔1小时获取一次设备对应的位置信息,则该时间位置属性信息对应的字段为某一日期,对应每一设备id的记录所存储的字段为第一位置编码_第一时间编码,第二位置编码_第二时间编码,第三位置编码_第三时间编码…第二十四位置编码_第二十四时间编码,可以理解的是,该应用场景下的数据id即为设备id,预设的间隔符为下划线。通过变长类型存储以及两个数据属性构建编码对的存储方式构建数据表可以节省数据存储空间,用户可直接根据查询需求通过第m属性信息对应的第一m子属性信息、第二m子属性信息或第一m子属性信息与第二m子属性信息组成的信息对的多种组合形式来查询数据,提高了数据查询效率和检索效率。可以理解的是,上述构建数据表的方式适用于编码对较少的应用场景,通常第m属性信息对应的子属性信息在十位数级别,如果在百位数级别,则会造成该字段内存储内容过长,会影响数据查询速度。

对应一字段内包括的元素较多,通常为百级别的场景,可以通过列表的形式构建该字段内的信息,例如,所述数据表的第n属性信息为变长数据类型,所述第n属性信息包括Y个元素信息,所述第n属性信息对应的字段所存储的内容为Y个元素信息编码构建的第n列表信息,其中,n=1,2…M,Y为正整数,每一元素信息编码基于所述编码映射表获取。对应的,所述数据查询维度信息包括第n属性信息对应的一个或多个元素信息。通过变长类型存储以及字段对应数据列表的存储方式构建数据表可以节省数据存储空间,用户可直接根据查询需求通过第n标识信息对应的一个或多个元素信息的多种组合形式来查询数据,提高了数据查询效率和检索效率。

作为一种实施例,所述步骤S3可包括:

步骤S31、将所述数据查询维度信息转换为结构化查询语言信息;

步骤S32、将所述结构化查询语言信息转换为与所述数据库查询语言相匹配的第一查询信息。

需要说明的是,直接基于数据查询请求来编写对应的数据库匹配的语言需要花费大量的时间,且较难实现,对专业水平要求较高,因此可以先将数据查询维度信息转换为结构化查询语言信息,结构化查询语言信息为通用的数据库查询语言,再将所述结构化查询语言信息转换为与所述数据库查询语言相匹配的第一查询信息,从而简化数据查询步骤,提高数据查询速度,从而提高数据检索效率。

作为一种实施例,所述数据库可以设置为ES(ElasticSearch)数据库,并在所述系统进一步设置Doris模块,Doris为现有的数据分析引擎,所述步骤S31基于所述Doris模块将所述维度信息转换为SQL语言;所述步骤S32基于所述 Doris模块将所述SQL语言转换为能够直接在所述ES数据库中查询的dsl语言,得到所述第一查询信息。通过Doris模块可以将数据查询请求转换成与ES数据库相匹配的语言,从而构建检索式到ES数据库的预设的数据表中进行倒排索引,在发明实施例所述系统总,通过ES与Doris的结合的架构,快速进行数据查询,再通过Doris快速进行聚合运算,能够大大提高数据查询的速度,即便是千亿级别的数据,也能实现秒级筛选数据,返回检索结果,大大提高了检索效率,从而提升了用户体验。

得到目标数据id后,通常还需要关联到对应的数据,进行数据聚合,因此,基于上述系统结构,当所述计算机程序被处理器执行时,还实现以下步骤:

步骤S6、根据目标数据id列表在所述数据库进行关联,得到目标数据;

步骤S7、基于所述Doris模块将所述目标数据进行聚合,生成目标数据聚合结果。

通过Doris模块能够快速将目标数据进行聚合,进一步提高数据分析的效率。

作为一种实施例,所述系统还可包括数据查询接口,用于获取所述数据查询请求,用户可以直接通过所述数据查询接口输入数据查询请求。

所述信息还可包括信息交互界面,用于根据用户的检索需求呈现所述目标数据id列表或目标数据聚合结果,或同时呈现目标数据id列表和目标数据聚合结果。

以数据id为用户的设备id为例,基于本发明实施例所述系统,用户可根基自己的需求检索出所需数据进行多维度分析,例如可以根据数据检索需求,任意选择对应的用户数据维度,在数据库中进行检索,得到目标设备id、目标数据以及目标数的聚合结果,然后进一步进行用户画像统计分析等,提高了数据分析分速度和效率,从而提升了用户体验。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

相关技术
  • 具有含横向主数据轨和纵向次数据轨的带介质的旋转头数据存储和检索系统以及方法
  • 一种数据检索系统和数据检索方法
技术分类

06120112347674