一种智能查询系统的制作方法

文档序号:10697643阅读:509来源:国知局
一种智能查询系统的制作方法
【专利摘要】本发明公开了一种智能查询系统,该系统包括模型配置模块、数据存储模块、计算引擎模块、规则引擎模块、数据导出模块、文件存储模块、页面查询模块、系统管理模块和系统监控模块。通过将多维模型按时间序列存储,在保障不改变业务处理逻辑的情况下,有效的减少了计算的数据量;前端页面展现通过文本文件实现,避免了频繁操作数据库,有效的降低了数据库的资源利用情况。这两方面的改进,都能大大提升智能查询的性能,让用户能快速的获取数据,解决取数沟通成本高、周期长、响应慢等问题,实现业务部门智能取数、加快工作效率、加快市场响应速度需求。
【专利说明】
一种智能查询系统
技术领域
[0001]本发明涉及数据库技术领域,尤其涉及一种智能查询系统。
【背景技术】
[0002]随着数据库技术的发展和应用,数据库存储的数据量从20世纪80年代的兆(M)字节及千兆(G)字节过渡到现在的兆兆(T)字节和千兆兆(P)字节;同时用户的查询需求也越来越复杂,涉及的已不仅是查询或操纵一张关系表中的一条或几条记录,而是要对表中千万条、甚至上亿条记录的数据进行数据分析和信息汇总,目前,这类涉及多维度的自定义查询功能主要是通过多维报表工具或智能查询工具来实现,用户通过界面任意选择维度和指标进行组合查询,系统返回汇总级的统计数据,系统可实现对多个维度进行数据切片、旋转、聚合等操作。通过智能查询系统,企业的业务部门能够减少对IT部门的依赖,利用自己熟悉的业务语言来展现数据、分析数据,提高了取数的效率;而企业的IT部门则从“授人以鱼”向“授人以渔”转型,不但提供满足业务需求的报表应用,而且降低了 IT部门的支撑成本。
[0003]如图1所示为现有技术中的智能查询系统架构图。现在智能查询的处理方案一般分成后台数据处理和前端OLAP分析两大部分。后台处理通过数据采集和数据汇聚构建统一的企业数据模型,再根据主题分析的需要,构建多维分析模型。前端OLAP分析连接数据仓库的多维模型,将用户发起的多维查询请求转换成查询多维模型的结构化SQL查询语句,并将语句放到数据仓库中执行,取出多维模型的结果数据,并将数据查询结果转换成多维数据结果并返回给用户。
[0004]上述做法存在的问题是查询的性能较差,由于前台查询界面的每一个智能查询报表只能对应后台数据仓的一个多维模型,当后端的多维模型数据量大,存储周期长时,模型的数据量太大,导致数据的关联查询、数据汇总操作的时间过长,从而造成智能查询的效率过低。

【发明内容】

[0005]本发明的目的是为了克服现有技术的缺陷,提供一种智能查询系统,从而能够实现快速提升查询性能。
[0006]为实现上述目的,本发明提供了一种智能查询系统,该系统包括模型配置模块、数据存储模块、计算引擎模块、规则引擎模块、数据导出模块、文件存储模块、页面查询模块、系统管理模块和系统监控模块。
[0007]模型配置模块包括数据库适配器、语义层定义模块;数据库适配器实现对多种数据库的连接;语义层定义模块实现对多维模型的配置。
[0008]数据存储模块采用时间序列分表存储,可采用按月或年周期存储。
[0009]规则引擎模块实现将前端用户选择的维度、指标以及过滤的条件转化成后端的SQL查询语句,并且根据用户的查询条件,智能选择后端数据库的不同物理表,并将SQL语句传到计算引擎模块。
[0010]计算引擎模块负责将规则引擎模块生成的SQL语句提交给数据库执行,生成满足用户查询要求的结果数据。
[0011]数据导出模块负责将计算引擎模块的计算结果导出成文本文件。
[0012]文件存储模块,负责将导出的文本文件存储到应用服务器,并进行文件的生命周期管理,将用户查询后不需要再使用的文件进行删除。
[0013]页面查询模块以导出的文本文件为数据源,将文本文件的数据按用户的要求展现到前端web页面上,实现用户的快速智能查询。
[0014]系统管理模块包括对智能查询系统的用户进行管理;对模型的权限进行管理;对模型的目录进行管理。
[0015]系统监控模块实现对模型的访问日志进行监控。
[0016]进一步地,数据库适配器实现对多种数据库的连接,包括常规的Oracle数据库和分布式数据库,例如Mysql、GreenPLum。
[0017]进一步地,多维模型的配置包括配置多维模型展现的名称与数据库表的映射关系,定义数据库表字段的属性,即定义为维度还是指标;实现对维表的配置,配置模型维度字段与维表的对应关系;实现对维度的定义和指标的定义,配置字段展现名称与数据库表字段对应关系。
[0018]进一步地,系统监控模块的监控包括监控用户在什么时间点访问过哪些模型,查看模型的维度和指标,通过这些监控信息,将模型的价值进行分类,为后续模型的优化提供依据,也能够实现对模型的生命周期管理,全面提升智能查询系统的可用性。
[0019]本发明技术方案带来的有益效果:
[0020]本发明通过将多维模型按时间序列存储,在保障不改变业务处理逻辑的情况下,有效的减少了计算的数据量;前端页面展现通过文本文件实现,避免了频繁操作数据库,有效的降低了数据库的资源利用情况。这两方面的改进,都能大大提升智能查询的性能,让用户能快速的获取数据,解决取数沟通成本高、周期长、响应慢等问题,实现业务部门智能取数、加快工作效率、加快市场响应速度需求。
【附图说明】
[0021]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0022]图1是本发明的现有技术中智能查询系统架构图;
[0023]图2是本发明的智能查询系统架构图。
【具体实施方式】
[0024]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025]本发明提供了一种基于时间序列存储及文本处理的智能查询系统,主要是针对现有多维报表工具存在的查询性能不够高效而设计的。该系统包括多维查询、口径查看、模板功能、搜索与推荐、数据库适配器管理、语义层定义等功能,借助该系统,无需IT人员帮助,业务人员即可开展自助式数据查询与分析,具有高效、易用、灵活优势,查询上亿级清单30秒内返回结果,助力企业提升运营效率。
[0026]如图2所示为本发明的智能查询系统架构图。
[0027]该系统包括模型配置模块、数据存储模块、计算引擎模块、规则引擎模块、数据导出模块、文件存储模块、页面查询模块、系统管理模块和系统监控模块。
[0028]模型配置模块包括数据库适配器、语义层定义。数据库适配器可以实现对多种数据库的连接,包括常规的Oracle数据库和MysqUGreenPLum等分布式数据库。语义层定义模块实现对多维模型的配置,配置多维模型展现的名称与数据库表的映射关系,定义数据库表字段的属性(即定义为维度还是指标);实现对维表的配置,配置模型维度字段与维表的对应关系;实现对维度的定义和指标的定义,配置字段展现名称与数据库表字段对应关系。
[0029]数据存储模块采用时间序列分表存储,可采用按月或年周期存储,例如,当数据采用按月周期存储后,数据量急剧下降,原来存储3年的数据量,从亿级的数据量下降为百万级的数据量,从而能够实现快速提升查询性能。当然也可以采用按年周期存储。
[0030]规则引擎模块实现将前端用户选择的维度、指标以及过滤的条件转化成后端的SQL查询语句,并且根据用户的查询条件,智能选择后端数据库的不同物理表,并将SQL语句传到计算引擎模块。
[0031]计算引擎模块负责将规则引擎模块生成的SQL语句提交给数据库执行,生成满足用户查询要求的结果数据。
[0032]数据导出模块负责将计算引擎模块的计算结果导出成文本文件。
[0033]文件存储模块,负责将导出的文本文件存储到应用服务器,并进行文件的生命周期管理,将用户查询后不需要再使用的文件进行删除。
[0034]页面查询模块以导出的文本文件为数据源,将文本文件的数据按用户的要求展现到前端web页面上,实现用户的快速智能查询。
[0035]系统管理模块包括对智能查询系统的用户进行管理;对模型的权限进行管理;对模型的目录进行管理。
[0036]系统监控模块实现对模型的访问日志进行监控,包括监控用户在什么时间点访问过哪些模型,查看模型的维度和指标,通过这些监控信息,将模型的价值进行分类,为后续模型的优化提供依据,也能够实现对模型的生命周期管理,全面提升智能查询系统的可用性。
[0037]本发明的智能查询系统基于时间序列存储及文本处理,跟常规的智能查询方法相比,主要有以下的发明改进:
[0038]1.该智能查询系统后端数据库采用Mysql集群搭建,数据多维模型按时间序列存储,有效的减少了单个物理表数据量过大的问题。按月分析的模型,假设存储3年的数据,采用按月周期存储后,数据量为原来的1/36,一个上亿级数据量的模型即可变成百万级的模型,计算的数据量急剧下降,从而能够实现快速提升查询性能。
[0039]2.前端页面展现基于文本文件实现,采用Java技术开发,实现OLAP的在线分析查询,用户可实现任意选择维度、选择某个维度值、选择指标等进行组合查询,并可导出文件进行保存,避免了对数据库的频繁操作,每个查询会话与数据库只有一次交互,将用户的查询要求转换成SQL后,通过高效的数据导出方法将数据导出成文本文件,后续用户的翻页查询,模板定制,数据导出等操作,都是通过操作文本文件实现,有效降低了数据库的资源利用情况,从而提升查询的性能。
[0040]以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种智能查询系统,其特征在于,该系统包括模型配置模块、数据存储模块、计算引擎模块、规则引擎模块、数据导出模块、文件存储模块、页面查询模块、系统管理模块和系统监控模块; 模型配置模块包括数据库适配器、语义层定义模块;数据库适配器实现对多种数据库的连接;语义层定义模块实现对多维模型的配置; 数据存储模块采用时间序列分表存储,可采用按月或年周期存储; 规则引擎模块实现将前端用户选择的维度、指标以及过滤的条件转化成后端的SQL查询语句,并且根据用户的查询条件,智能选择后端数据库的不同物理表,并将SQL语句传到计算引擎模块; 计算引擎模块负责将规则引擎模块生成的SQL语句提交给数据库执行,生成满足用户查询要求的结果数据; 数据导出模块负责将计算引擎模块的计算结果导出成文本文件; 文件存储模块,负责将导出的文本文件存储到应用服务器,并进行文件的生命周期管理,将用户查询后不需要再使用的文件进行删除; 页面查询模块以导出的文本文件为数据源,将文本文件的数据按用户的要求展现到前端web页面上,实现用户的快速智能查询; 系统管理模块包括对智能查询系统的用户进行管理;对模型的权限进行管理;对模型的目录进行管理; 系统监控模块实现对模型的访问日志进行监控。2.根据权利要求1所述的系统,其特征在于,数据库适配器实现对多种数据库的连接,包括常规的Oracle数据库和分布式数据库,例如Mysql、GreenPLum。3.根据权利要求1所述的系统,其特征在于,多维模型的配置包括配置多维模型展现的名称与数据库表的映射关系,定义数据库表字段的属性,即定义为维度还是指标;实现对维表的配置,配置模型维度字段与维表的对应关系;实现对维度的定义和指标的定义,配置字段展现名称与数据库表字段对应关系。4.根据权利要求1所述的系统,其特征在于,系统监控模块的监控包括监控用户在什么时间点访问过哪些模型,查看模型的维度和指标,通过这些监控信息,将模型的价值进行分类,为后续模型的优化提供依据,也能够实现对模型的生命周期管理,全面提升智能查询系统的可用性。
【文档编号】G06F17/30GK106066895SQ201610514153
【公开日】2016年11月2日
【申请日】2016年6月30日
【发明人】徐少强, 余虎, 高才
【申请人】广东亿迅科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1