一种基于预处理组件的报表计算方法、装置、设备及介质制造方法及图纸

技术编号:38917239 阅读:15 留言:0更新日期:2023-09-25 09:30
本申请公开了一种基于预处理组件的报表计算方法、装置、设备及介质,其中方法包括:获取当前处理器的算力值,并基于触发阈值设定触发阈值;获取目标计算任务的算力需求,并基于算力需求以及触发阈值,判断目标计算任务是否触发预处理组件;若触发预处理组件,则按照预处理组件规则,对目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行目标计算任务;若未触发预处理组件,则直接执行目标计算任务。能够通过分析计算公式,对业务数据进行合理的预处理加工,在资源有限的情况下可以大幅提高计算性能。通过预处理技术可以将业务系统原始数据预先整理成为适合报表取数场景的结构,从而实现灵活且高性能的报表计算。算。算。

【技术实现步骤摘要】
一种基于预处理组件的报表计算方法、装置、设备及介质


[0001]本申请涉及报表计算领域,具体涉及一种基于预处理组件的报表计算方法、装置、设备及介质。

技术介绍

[0002]近年来,随着信息化系统逐渐完善,BS架构下的各种报表中,单元格中的数据大量的来自于业务系统,企业ERP中各业务系统产生的数据,往往需要以表格的形式做最终的呈现,这就导致报表产品的数据来源复杂。为了保证数据的实时性,直接从原业务系统取数需要编写复杂sql,大量的复杂sql很难保证取数计算的性能。
[0003]为了提高性能,现有的解决方案往往依托数据中台通过ETL等工具对业务数据进行清洗加工整理后再提供给报表取数计算,这样做数据实时性很难保证,且需要额外部署数据中台增加了运维成本。

技术实现思路

[0004]为了解决上述问题,本申请提出了一种基于预处理组件的报表计算方法、装置、设备及介质,其中方法包括:
[0005]获取当前处理器的算力值,并基于所述算力值设定触发阈值;获取目标计算任务的算力需求,并基于所述算力需求以及所述触发阈值,判断所述目标计算任务是否触发预处理组件;若触发所述预处理组件,则按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务;若未触发所述预处理组件,则直接执行所述目标计算任务。
[0006]在一个实施例中,所述按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,具体包括:获取目标报表中的报表公式,并将所述报表公式转换为标准数据库语言;将所述标准数据库语言转换为语法树,并通过遍历语法树解析所述标准数据库语言,以得到取数字段、取数来源表以及查询条件字段;赋予具有相同取数来源表的报表公式以相同的第一标识;建立目标取数来源表,并将所述取数来源表中的数据导入至所述目标取数来源表;将所述标准数据库语言中的取数来源表改写为所述目标取数来源表的第二标识,所述第二标识由所述第一标识与系统变量结合而成。
[0007]在一个实施例中,所述获取目标计算任务的算力需求,具体包括:接收所述目标计算任务的任务要求,并通过自然语言处理技术,确定所述目标计算任务的计算内容;基于所述计算内容,获取所述目标计算任务对应的第一标识数量,以及所述第一标识分别对应的公式数量;基于所述第一标识数量以及所述公式数量,确定所述目标计算任务的算力需求。
[0008]在一个实施例中,所述按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务,具体包括:确定所述目标报表对应的全部第一标识;基于执行顺序,根据所述第一标识以及重构后的所述标准数据库语言,生成预处理配置表;所述预处理配置表中还包括用于根据所述第二标识建立
目标取数来源表,并将所述取数来源表中的数据导入至所述目标取数来源表的数据库语言。
[0009]在一个实施例中,所述通过遍历语法树解析所述标准数据库语言,以得到取数字段、取数来源表以及查询条件字段后,所述方法还包括:基于所述第一标识,将所述第一标识对应的所述取数来源、所述取数字段、过滤条件、以及公式数量进行记录,以得到解析结果记录表。
[0010]在一个实施例中,所述使用转化后的数据库语言执行所述目标计算任务之后,所述方法还包括:获取所述目标计算任务的执行进度;基于所述执行进度,异步删除以所述第二标识为名称的表格。
[0011]在一个实施例中,所述系统变量为执行所述预处理组件时的线程标识。
[0012]本申请还提供了一种基于预处理组件的报表计算装置,包括:
[0013]触发阈值模块,获取当前处理器的算力值,并基于所述算力值设定触发阈值;判断模块,获取目标计算任务的算力需求,并基于所述算力需求以及所述触发阈值,判断所述目标计算任务是否触发预处理组件;预处理模块,若触发所述预处理组件,则按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务;直接执行模块,若未触发所述预处理组件,则直接执行所述目标计算任务。
[0014]本申请还提供了一种基于预处理组件的报表计算设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:获取当前处理器的算力值,并基于所述算力值设定触发阈值;获取目标计算任务的算力需求,并基于所述算力需求以及所述触发阈值,判断所述目标计算任务是否触发预处理组件;若触发所述预处理组件,则按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务;若未触发所述预处理组件,则直接执行所述目标计算任务。
[0015]本申请还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:获取当前处理器的算力值,并基于所述算力值设定触发阈值;获取目标计算任务的算力需求,并基于所述算力需求以及所述触发阈值,判断所述目标计算任务是否触发预处理组件;若触发所述预处理组件,则按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务;若未触发所述预处理组件,则直接执行所述目标计算任务。
[0016]通过本申请提出的方法能够带来如下有益效果:能够通过分析计算公式,对业务数据进行合理的预处理加工,在资源有限的情况下可以大幅提高计算性能。通过预处理技术可以将业务系统原始数据预先整理成为适合报表取数场景的结构,从而实现灵活且高性能的报表计算。
附图说明
[0017]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0018]图1为本申请实施例中一种基于预处理组件的报表计算方法的流程示意图;
[0019]图2为本申请实施例中一种基于预处理组件的报表计算方法的逻辑示意图;
[0020]图3为本申请实施例中一种预处理过程的流程示意图;
[0021]图4为本申请实施例中一种基于预处理组件的报表计算装置的模块示意图;
[0022]图5为本申请实施例中一种基于预处理组件的报表计算设备的结构示意图。
具体实施方式
[0023]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0024]以下结合附图,详细说明本申请各实施例提供的技术方案。
[0025]图1为本说明书一个或多个实施例提供的一种基于预处理组件的报表计算方法的流程示意图。该方法可以应用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于预处理组件的报表计算方法,其特征在于,包括:获取当前处理器的算力值,并基于所述算力值设定触发阈值;获取目标计算任务的算力需求,并基于所述算力需求以及所述触发阈值,判断所述目标计算任务是否触发预处理组件;若触发所述预处理组件,则按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务;若未触发所述预处理组件,则直接执行所述目标计算任务。2.根据权利要求1所述的方法,其特征在于,所述按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,具体包括:获取目标报表中的报表公式,并将所述报表公式转换为标准数据库语言;将所述标准数据库语言转换为语法树,并通过遍历语法树解析所述标准数据库语言,以得到取数字段、取数来源表以及查询条件字段;赋予具有相同取数来源表的报表公式以相同的第一标识;建立目标取数来源表,并将所述取数来源表中的数据导入至所述目标取数来源表;将所述标准数据库语言中的取数来源表改写为所述目标取数来源表的第二标识,所述第二标识由所述第一标识与系统变量结合而成。3.根据权利要求2所述的方法,其特征在于,所述获取目标计算任务的算力需求,具体包括:接收所述目标计算任务的任务要求,并通过自然语言处理技术,确定所述目标计算任务的计算内容;基于所述计算内容,获取所述目标计算任务对应的第一标识数量,以及所述第一标识分别对应的公式数量;基于所述第一标识数量以及所述公式数量,确定所述目标计算任务的算力需求。4.根据权利要求2所述的方法,其特征在于,所述按照所述预处理组件规则,对所述目标计算任务中的数据库语言进行转化,并使用转化后的数据库语言执行所述目标计算任务,具体包括:确定所述目标报表对应的全部第一标识;基于执行顺序,根据所述第一标识以及重构后的所述标准数据库语言,生成预处理配置表;所述预处理配置表中还包括用于根据所述第二标识建立目标取数来源表,并将所述取数来源表中的数据导入至所述目标取数来源表的数据库语言。5.根据权利要求2所述的方法,其特征在于,所述通过遍历语法树解析所述标准数据库语言,以得到取数字段、取数来源表以及查询条件字段后,所述方法还包括:基于所述第一标识,将所述第一标识对应...

【专利技术属性】
技术研发人员:彭鹏
申请(专利权)人:浪潮通用软件有限公司
类型:发明
国别省市:

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

1