一种高度复用的性能指标数据检索实现方法及装置制造方法及图纸

技术编号:37144162 阅读:15 留言:0更新日期:2023-04-06 21:54
本发明专利技术公开一种高度复用的性能指标数据检索实现方法及装置,方法包括:将性能指标数据表各列抽象归类为维度列和数据列以及数据时间粒度的描述,作为数据表的模型存储在数据库模型表中;通过数据表名关联,并可以配置虚拟指标数据列;在执行查询时,筛选数据源,通过入参的维度列名和数据列名,筛选出符合条件的模型;查询时通过调用组件方法的方式根据入参条件动态组装查询目标表的SQL,将虚拟指标通过目标数据表实际存在的数据列按产品需求配置的算法在数据库查询使用聚合函数或计算符计算返回结果。本发明专利技术提升了查询性能数据的接口开发效率,将原有需要根据查询性能指标定制开发接口的方式优化成为可通过一个通用接口获取数据。获取数据。获取数据。

【技术实现步骤摘要】
一种高度复用的性能指标数据检索实现方法及装置


[0001]本专利技术涉及数据检索领域,尤其是一种高度复用的性能指标数据检索实现方法及装置。

技术介绍

[0002]传统的性能数据查询需明确指定表名和对应的列,以及定制化的处理指标的运算等,可复用性低。
[0003]现有技术的性能数据查询策略,需根据前端入参的指标列名和筛选条件,在后端用拼接字符串SQL语句的方式,然后在数据库中执行后返回查询结果。接口可复用性低,且容易由于入参拼接SQL产生SQL注入安全问题,造成系统安全漏洞。

技术实现思路

[0004]为解决现有技术存在的问题,本专利技术提供一种高度复用的性能指标数据检索实现方法及装置,提升了查询性能数据的接口开发效率,将原有需要根据查询性能指标定制开发接口的方式优化成为可通过一个通用接口获取数据。
[0005]为实现上述目的,本专利技术采用下述技术方案:
[0006]在本专利技术一实施例中,提出了一种高度复用的性能指标数据检索实现方法,该方法包括:
[0007]S01、将性能指标数据表各列抽象归类为维度列和数据列以及数据时间粒度的描述,作为数据表的模型存储在数据库模型表中;
[0008]S02、在数据库中将数据表的表名、维度列名、数据列名分别配置在三张表中,通过数据表名关联,并可以配置虚拟指标数据列;
[0009]S03、在执行查询时,筛选数据源,通过入参的维度列名和数据列名,筛选出符合条件的模型;
[0010]S04、查询时通过使用开源JSqlParser组件,以调用组件方法的方式根据入参条件动态组装查询目标表的SQL,将虚拟指标通过目标数据表实际存在的数据列按产品需求配置的算法在数据库查询使用聚合函数或计算符计算返回结果。
[0011]进一步地,所述S01中维度列是指数据指标列的各个分组描述列,如地市信息/设备信息/客户信息等,数据列是指性能指标所在的列,数据时间粒度是指数据采集的时间间隔。
[0012]进一步地,所述S02中的虚拟指标数据列是指并不是直接从目标数据表中已有的数据列获取的指标数据,而是通过目标数据表中一个或者多个列按照配置的算法计算返回数据指标。
[0013]进一步地,所述符合条件的表名存在多个,筛选出维度列和数据列数量最少的表作为目标数据表,完成筛选数据源。
[0014]进一步地,所述S03包括:
[0015]S031、筛选出满足所有维度都能匹配上的数据集;
[0016]S032、筛选出包含查询指标的数据集。对上一步的数据集进行筛选,得出包含了查询指标的所有数据集;
[0017]S033、匹配出能满足条件的数据集;
[0018]S034、转换可需关联的数据集,数据集基于该种数据结构进行关联查询SQL的生成;
[0019]S035、构建查询SQL语句。
[0020]在本专利技术一实施例中,还提出了一种高度复用的性能指标数据检索实现装置,该装置包括:
[0021]初步筛选匹配模块、将性能指标数据表各列抽象归类为维度列和数据列以及数据时间粒度的描述,作为数据表的模型存储在数据库模型表中;
[0022]二次筛选匹配模块、在数据库中将数据表的表名、维度列名、数据列名分别配置在三张表中,通过数据表名关联,并可以配置虚拟指标数据列;
[0023]匹配成功模块、在执行查询时,筛选数据源,通过入参的维度列名和数据列名,筛选出符合条件的模型;
[0024]组装查询语句模块、查询时以调用组件方法的方式根据入参条件动态组装查询目标表的SQL,将虚拟指标通过目标数据表实际存在的数据列按产品需求配置的算法在数据库查询使用聚合函数或计算符计算返回结果。
[0025]在本专利技术一实施例中,还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现前述高度复用的性能指标数据检索实现方法。
[0026]在本专利技术一实施例中,还提出了一种计算机可读存储介质,计算机可读存储介质存储有执行高度复用的性能指标数据检索实现方法的计算机程序。
[0027]有益效果:
[0028]本专利技术高度复用的性能指标数据检索实现方法,将数据查询通过配置数据表抽象出的维度列和数据列与表的关系,配置的虚拟指标通过数据表实际存在的数据列按配置的算法计算返回结果增加了数据的动态运算能力。使用开源组件功能动态组装查询语句的方式,将数据查询简化为只需传入所需数据的数据列名和维度列名以及可选的筛选条件参数。解决了性能指标数据查询的复用性和系统安全性问题。
附图说明
[0029]图1是本专利技术高度复用的性能指标数据检索实现方法流程示意图;
[0030]图2是本专利技术高度复用的性能指标数据检索实现装置结构示意图;
[0031]图3是本专利技术一实施例的计算机设备结构示意图。
具体实施方式
[0032]下面将参考若干示例性实施方式来描述本专利技术的原理和精神,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本专利技术,而并非以任何方式限制本专利技术的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能
够将本公开的范围完整地传达给本领域的技术人员。
[0033]本领域技术人员知道,本专利技术的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
[0034]本专利技术涉及的名词及其翻译与解释,如下表1:
[0035]英文名称或缩写中文释义SQL结构化查询语言(StructuredQueryLanguage)JSqlParserJava结构化查询语言解析器(JavaStructuredQueryLanguageparser)
[0036]表1
[0037]根据本专利技术的实施方式,提出了一种高度复用的性能指标数据检索实现方法及装置,提升了查询性能数据的接口开发效率,将原有需要根据查询性能指标定制开发接口的方式优化成为可通过一个通用接口获取数据。
[0038]下面参考本专利技术的若干代表性实施方式,详细阐释本专利技术的原理和精神。
[0039]如图1所示,该方法包括:
[0040]S01、将性能指标数据表各列抽象归类为维度列和数据列以及数据时间粒度的描述,作为数据表的模型存储在数据库模型表中;
[0041]S02、在数据库中将数据表的表名、维度列名、数据列名分别配置在三张表中,通过数据表名关联,并可以配置虚拟指标数据列;
[0042]S03、在执行查询时,筛选数据源,通过入参的维度列名和数据列名,筛选出符合条件的模型;
[0043]S04、查询时通过使用开源JSqlParser组件,以调用组件方法的方式根据入参条件动态组装查询目标表的SQL,将虚拟指标通过目标数据表实际存在的数据列按产品需求配置的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种高度复用的性能指标数据检索实现方法,其特征在于,该方法包括:S01、将性能指标数据表各列抽象归类为维度列和数据列以及数据时间粒度的描述,作为数据表的模型存储在数据库模型表中;S02、在数据库中将数据表的表名、维度列名、数据列名分别配置在三张表中,通过数据表名关联,并可以配置虚拟指标数据列;S03、在执行查询时,筛选数据源,通过入参的维度列名和数据列名,筛选出符合条件的模型;S04、查询时通过调用组件方法的方式根据入参条件动态组装查询目标表的SQL,将虚拟指标通过目标数据表实际存在的数据列按产品需求配置的算法在数据库查询使用聚合函数或计算符计算返回结果。2.根据权利要求1所述的高度复用的性能指标数据检索实现方法,其特征在于,所述S01中维度列是指数据指标列的各个分组描述列,数据列是指性能指标所在的列,数据时间粒度是指数据采集的时间间隔。3.根据权利要求2所述的高度复用的性能指标数据检索实现方法,其特征在于,所述S02中的虚拟指标数据列通过目标数据表中一个或者多个列按照配置的算法计算返回数据指标。4.根据权利要求3所述的高度复用的性能指标数据检索实现方法,其特征在于,所述符合条件的表名存在多个,筛选出维度列和数据列数量最少的表作为目标数据表,完成筛选数据源。5.根据权利要求1所述的高度复用的性能指标数据检索实现方法,其特征在于,所述S03包括:S031、筛选出满足所有维度都能匹配上的数...

【专利技术属性】
技术研发人员:李育林
申请(专利权)人:中盈优创资讯科技有限公司
类型:发明
国别省市:

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

1