本技术涉及计算机,具体地,涉及一种基于多个数据表的指标计算方法、装置、计算设备、计算机可读存储介质以及计算机程序产品。此外,本技术还涉及一种基于多个数据表的场景分析方法和一种基于多个数据表的报表生成方法。
背景技术:
1、随着信息技术的不断发展,各行各业所需处理、加工、分析的数据呈爆炸式增长,如传统的数据库和分布式存储库、云存储库等成为企业、平台甚至个人的主要的数据源。在不同的业务场景下,往往需要从多个数据源获取数据,经过键值关联、数据加工计算等步骤,输出实时的查询结果。所获取的数据往往包括不同的数据库中存储的数据。
2、在相关技术中,为获取和显示相应的查询结果,通常需要通过数据库编程、应用编程、报表相结合的方式定制界面输出。然而,由于报表数据可能来自多个数据表,这些数据表来自不同的数据源(例如,不同的数据库),不同数据源的数据的筛选、加工逻辑可能不尽相同,当用户进行查询时,往往需要等待后端服务进行大量复杂的计算、计算耗时长,影响用户体验。另外,历史的数据加工结果往往得不到复用,这会造成计算资源的浪费,并且当数据源中的数据的加工、计算逻辑发生改变时,使用到相关数据的用户侧的报表需要逐一修改,这容易导致数据存在不一致性的情况。
技术实现思路
1、有鉴于此,本技术提供了一种基于多个数据表的指标计算方法、装置、计算设备、计算机可读存储介质以及计算机程序产品,以缓解、减轻、甚至消除上述问题。
2、根据本技术的一个方面,提供了一种基于多个数据表的指标计算方法,所述多个数据表存储在至少一个数据源中,所述方法包括:接收目标指标对应的至少一个目标参数;根据所述至少一个目标参数和预先配置的多个计算规则,确定中间结果集,所述中间结果集包括所述多个计算规则中的每个计算规则的输出结果;根据所述中间结果集,计算所述目标指标;其中,所述多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与所述至少一个目标参数对应的至少一个维度,所述多个维度与所述多个数据表中计算所述目标指标所需要的多个字段一一对应;和所述多个计算规则中不同于该计算规则的其他计算规则的输出结果。
3、根据本技术的另一个方面,提供了一种基于多个数据表的场景分析方法,所述多个数据表存储在至少一个数据源中,所述方法包括:确定目标场景对应的多个目标指标;获取与所述多个目标指标一一对应的多个目标参数集;根据所述多个目标参数集中的每个目标参数集以及与该目标参数集对应的预先配置的多个计算规则,确定与该目标参数集对应的中间结果集,与该目标参数集对应的中间结果集包括与该目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果;根据与所述多个目标参数集中的每个目标参数集对应的中间结果集,计算所述多个目标指标;以及根据所述多个目标指标,确定所述目标场景的分析结果;其中,与每个目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与该目标参数集对应的至少一个维度,所述多个维度与所述多个数据表中计算与该目标参数集对应的目标指标所需要的多个字段一一对应;和与该目标参数集对应的预先配置的多个计算规则中不同于该计算规则的其他计算规则的输出结果。
4、根据本技术的又一个方面,提供了一种基于多个数据表的报表生成方法,所述多个数据表存储在至少一个数据源中,所述方法包括:确定目标场景和所述目标场景对应的多个目标指标;获取与所述多个目标指标一一对应的多个目标参数集;根据所述多个目标参数集中的每个目标参数集以及与该目标参数集对应的预先配置的多个计算规则,确定与该目标参数集对应的中间结果集,与该目标参数集对应的中间结果集包括与该目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果;根据与所述多个目标参数集中的每个目标参数集对应的中间结果集,确定与该目标参数集对应的目标指标结果报表,该目标参数集对应的目标指标结果报表存储有该目标参数集对应的目标指标的计算结果;以及根据目标报表与所述多个目标指标之间的映射关系,基于与所述多个目标参数集中的每个目标参数集对应的目标指标结果报表,确定所述目标报表;其中,与每个目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与该目标参数集对应的至少一个维度,所述多个维度与所述多个数据表中计算与该目标参数集对应的目标指标所需要的多个字段一一对应;和与该目标参数集对应的预先配置的多个计算规则中不同于该计算规则的其他计算规则的输出结果。
5、根据本技术的又一个方面,提供了一种基于多个数据表的指标计算装置,其包括:目标参数接收模块,被配置为接收目标指标对应的至少一个目标参数;中间结果集确定模块,被配置为根据所述至少一个目标参数和预先配置的多个计算规则,确定中间结果集,所述中间结果集包括所述多个计算规则中的每个计算规则的输出结果;以及目标指标计算模块,被配置为根据所述中间结果集,计算所述目标指标;其中,所述多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与所述至少一个目标参数对应的至少一个维度,所述多个维度与所述多个数据表中计算所述目标指标所需要的多个字段一一对应;和所述多个计算规则中不同于该计算规则的其他计算规则的输出结果。
6、根据本技术的又一个方面,提供了一种基于多个数据表的场景分析装置,所述多个数据表存储在至少一个数据源中,所述装置包括:目标指标确定模块,被配置为确定目标场景对应的多个目标指标;目标参数集获取模块,被配置为获取与所述多个目标指标一一对应的多个目标参数集;中间结果集确定模块,被配置为根据所述多个目标参数集中的每个目标参数集以及与该目标参数集对应的预先配置的多个计算规则,确定与该目标参数集对应的中间结果集,与该目标参数集对应的中间结果集包括与该目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果;目标指标计算模块,被配置为根据与所述多个目标参数集中的每个目标参数集对应的中间结果集,计算所述多个目标指标;以及场景分析模块,被配置为根据所述多个目标指标,确定所述目标场景的分析结果;其中,与每个目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与该目标参数集对应的至少一个维度,所述多个维度与所述多个数据表中计算与该目标参数集对应的目标指标所需要的多个字段一一对应;和与该目标参数集对应的预先配置的多个计算规则中不同于该计算规则的其他计算规则的输出结果。
7、根据本技术的又一个方面,提供了一种报表生成装置,所述多个数据表存储在至少一个数据源中,所述装置包括:目标指标确定模块,被配置为确定目标场景和所述目标场景对应的多个目标指标;目标参数集获取模块,被配置为获取与所述多个目标指标一一对应的多个目标参数集;中间结果集确定模块,被配置为根据所述多个目标参数集中的每个目标参数集以及与该目标参数集对应的预先配置的多个计算规则,确定与该目标参数集对应的中间结果集,与该目标参数集对应的中间结果集包括与该目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果;指标结果报表确定模块,被配置为根据与所述多个目标参数集中的每个目标参数集对应的中间结果集,确定与该目标参数集对应的目标指标结果报表,该目标参数集对应的目标指标结果报表存储有该目标参数集对应的目标指标的计算结果;以及目标报表确定模块,被配置为根据目标报表与所述多个目标指标之间的映射关系,基于与所述多个目标参数集中的每个目标参数集对应的目标指标结果报表,确定所述目标报表;其中,与每个目标参数集对应的预先配置的多个计算规则中的每个计算规则的输出结果根据以下中的至少一项被确定:多个维度中与该目标参数集对应的至少一个维度,所述多个维度与所述多个数据表中计算与该目标参数集对应的目标指标所需要的多个字段一一对应;和与该目标参数集对应的预先配置的多个计算规则中不同于该计算规则的其他计算规则的输出结果。
8、根据本技术的又一个方面,提供了一种计算设备,包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当该计算机可执行指令被处理器执行时执行根据本技术的前述方面提供的任一方法。
9、根据本技术的又一个方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当该计算机可执行指令被执行时,执行根据本技术的前述方面提供的任一方法。
10、根据本技术的又一个方面,提供了一种计算机程序产品,包括计算机可执行指令,其中该计算机可执行指令被处理器执行时执行根据本技术的前述方面提供的任一方法。
11、根据本技术提供的基于存储在至少一个数据源中的多个数据表的指标计算方法,可以根据所接收的与目标指标对应的至少一个目标参数和预先配置的多个计算规则,确定中间结果集,所述中间结果集包括所述多个计算规则中的每个计算规则的输出结果;进而根据所述中间结果集,计算所述目标指标。相较于相关技术中的指标计算方法,本技术提供的方法可以将来自不同数据表的数据进行标准化处理,在目标指标的计算过程中可以实现不同计算规则及相关输出结果的复用,从而可以节省相应的计算资源、简化计算流程、缩小计算耗时、以及保证数据的一致性。
12、根据在下文中所描述的实施例,本技术的这些和其他方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。