指标计算方法及装置与流程

文档序号:29689398发布日期:2022-04-16 10:51阅读:289来源:国知局
指标计算方法及装置与流程

1.本发明涉及数据计算技术领域,尤其涉及指标计算方法及装置。


背景技术:

2.在通信行业的数据采集领域伴随着许多资源、性能、负荷等指标的采集工作,这些指标通常不是单独出现的,而是一组紧相关的指标一起出现或被采集,这一组指标组成的二维表结构就称之为指标组,为支撑上层业务分析工作,通常需要多个指标组进行关联计算得到更有意义的目标指标组,典型的有资源回填、多表关联。
3.目前,对于每一种目标指标组,针对目标指标组的特点进行定制开发得到定制代码,通过运行该代码得到目标指标组中各业务指标各自的值。
4.但是,定制代码的后期维护难度较大。


技术实现要素:

5.本发明提供了一种指标计算方法、装置、计算机可读存储介质及电子设备,通过电子表格软件对目标指标组的可配置文件进行维护,降低了维度难度;另外,将业务指标的计算过程转化为数据库引擎的执行过程,逻辑清晰,有非常强的适用性,便于扩展。
6.第一方面,本发明提供了一种指标计算方法,包括:
7.存储电子表格软件生成的多个目标指标组各自对应的可配置文件;其中,所述可配置文件表示多个原始指标各自的值确定对应的目标指标组中各业务指标各自的值的计算规则;
8.确定指标计算请求;其中,所述指标计算请求携带目标指标组或目标指标组的标识;
9.确定所述目标指标组匹配的多个原始指标各自的值;
10.调用数据库引擎基于所述目标指标组匹配的可配置文件指示的计算规则对所述匹配的多个原始指标各自的值进行计算,确定所述目标指标组中各业务指标各自的值。
11.第二方面,本发明提供了一种指标计算装置,包括:
12.文件存储模块,用于存储电子表格软件生成的多个目标指标组各自对应的可配置文件;其中,所述可配置文件表示多个原始指标各自的值确定对应的目标指标组中各业务指标各自的值的计算规则;
13.请求确定模块,用于确定指标计算请求;其中,所述指标计算请求携带目标指标组或目标指标组的标识;
14.字段确定模块,用于确定所述目标指标组匹配的多个原始指标各自的值;
15.执行模块,用于调用数据库引擎基于所述目标指标组匹配的可配置文件指示的计算规则对所述匹配的多个原始指标各自的值进行计算,确定所述目标指标组中各业务指标各自的值。
16.第三方面,本发明提供了一种计算机可读存储介质,包括执行指令,当电子设备的
处理器执行所述执行指令时,所述处理器执行如第一方面中任一所述的方法。
17.第四方面,本发明提供了一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如第一方面中任一所述的方法。
18.本发明提供了一种指标计算方法、装置、计算机可读存储介质及电子设备,该方法通过存储电子表格软件生成的多个目标指标组各自对应的可配置文件;其中,可配置文件表示多个原始指标各自的值确定对应的目标指标组中各业务指标各自的值的计算规则;然后,确定指标计算请求;其中,指标计算请求携带目标指标组或目标指标组的标识;然后,确定目标指标组匹配的多个原始指标各自的值;之后,调用数据库引擎基于目标指标组匹配的可配置文件指示的计算规则对多个原始指标各自的值进行计算,确定目标指标组中各业务指标各自的值。综上所述,本发明的技术方案,通过电子表格软件对目标指标组的可配置文件进行维护,降低了维度难度,节约了人力资源;另外,将业务指标的计算过程转化为数据库引擎的执行过程,逻辑清晰,有非常强的适用性,便于扩展。
19.上述的非惯用的优选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
20.为了更清楚地说明本发明实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
21.图1为本发明实施例提供的一种指标计算方法的流程示意图;
22.图2a为本发明实施例提供的一种计算规则的结构示意图;
23.图2b为本发明实施例提供的另一种计算规则的结构示意图;
24.图3为本发明实施例提供的存储系统的结构示意图;
25.图4为本发明实施例提供的另一种指标计算方法的流程示意图;
26.图5为本发明实施例提供的一种计算规则配置模板的示意图;
27.图6a为本发明实施例提供的资源文件1的示意图;
28.图6b为本发明实施例提供的资源文件2的示意图;
29.图6c为本发明实施例提供的本地词典的示意图;
30.图7为本发明实施例提供的目标指标组的示意图;
31.图8为本发明实施例提供的一种指标计算装置的结构示意图;
32.图9为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
33.为使本发明的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本发明的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
34.如图1所示,为本发明实施例提供的一种指标计算方法。本发明实施例所提供的方法可应用在电子设备上,具体可以应用于服务器或一般计算机上。需要说明的是,电子设备可以理解为服务提供方,本实施例中,方法具体包括以下步骤:
35.步骤101、存储电子表格软件生成的多个目标指标组各自对应的可配置文件;其中,可配置文件表示多个原始指标各自的值确定对应的目标指标组中各业务指标各自的值的计算规则。
36.本步骤中,采用基于电子表格的形式定义目标指标组的计算规则,方便理解与维护。
37.作为一种可行的实现方式,电子设备具体可通过如下实现方式确定多个原始指标:
38.电子设备确定多个原始指标组,基于多个原始指标组确定用于计算目标指标组的若干个原始指标组,将若干个原始指标组中的指标分别作为原始指标。
39.应当理解,电子设备在采集数据的过程中,指标不是单一出现的,而是一组紧相关的指标一起被采集,这些紧相关的多个指标可以称为原始指标组。示例地,获取设备信息,每5分钟生成一份表,该表中的多个指标作为一个原始指标组。另外,多个原始指标可能存在和目标指标组中的业务指标无关的指标,但是在采集过程中是不可分割的指标。
40.在实际应用,原始指标的值通常为多个,如采用表格的方式存储原始指标的值,则原始指标的值可以理解为原始指标的字段中字段名之外的内容。
41.作为一种可行的实现方式,计算规则指示了从多个原始指标各自的值计算得到目标指标组中各业务指标各自的值的计算方式。
42.如图5所示,在一个例子中,计算规则可以包括以下部分:
43.第一部分:目标指标组配置。其中,目标指标组配置可以理解为定义目标指标组的第一基本信息。示例地,第一基本信息可以包括存储类型,数据粒度,数据类别,显示名称等,具体需要结合实际需求确定,本实施例对此不做具体限定。
44.第二部分:中间表配置和中间字段配置。其中,中间表配置可以理解为定义中间表的第二基本信息。示例地,第二基本信息可以包括表名称、存储类型、所属的目标指标组。中间字段配置可以理解为定义中间表中的字段的第三基本信息。示例地,第三基本信息可以包括:字段名称、字段类型、所属的中间表等,具体需要结合实际需求确定,本实施例对此不做具体限定。
45.第三部分:业务指标配置及映射规则配置。其中,业务指标配置主要用于配置业务字段名称、字段类型、最大值、最小值、来源表(包括多个原始指标各自的值)、来源字段等,具体需要结合实际需求确定,本实施例对此不做具体限定。
46.进一步的,如图2a所示,计算规则可以为简单运算、多个原始指标组关联、中间表视图、视图归并等处理。其中,中间表视图可以理解为包含中间表配置的字段名称和字段名称对应的值的表;视图归并可以理解为将不同的中间表视图归并成一个视图。需要说明的是,考虑到一个原始指标组无法计算目标指标组中的各业务指标,因此需要对多个原始指标组进行关联,即合并多个原始指标组中的指标。
47.在一个例子中,如图2b所示,简单运算可以理解为过滤、衍生、重命名、重排序、投影等。其中,过滤可以理解为选取需要的指标的值,衍生可以理解为复制需要的指标的值,
投影可以理解为依据原始指标生成的目标指标组中的业务指标,重命名可以理解为改变指标的名称,重排序可以理解为改变指标的顺序。
48.需要说明的是,若计算规则仅仅包括简单运算,则无需配置中间表和中间表中的字段。
49.因此,本实施例主要实现2类的计算规则。第1类是多个原始指标通过简单运算可得到目标指标组;对应的,目标指标组中的业务指标和原始指标含义相同,但是,名称不同;第2类是多个原始指标经过一系列中间运算最终归并得到目标指标组;对应的,目标指标组中的各业务指标可以为多个原始指标之外的其他指标;或者,目标指标组中的部分业务指标可以与原始指标的含义相同,部分业务指标为原始指标之外的其他指标。
50.作为一种可行的实现方式,一个工作表表示一个目标指标组的计算规则。
51.示例地,采用excel形式配置计算规则,将每个sheet表示一个目标指标组的计算过程。
52.作为一种可行的实现方式,电子表格软件为excel软件。
53.作为一种可行的实现方式,多个目标指标组各自对应的可配置文件保存在硬盘等存储介质中,可反复调用。
54.作为一种可行的实现方式,多个原始指标可以为网络设备的相关指标。比如,网络设备可以为路由器,对应的,路由器的指标可以为域名、在线用户数、访问限制用户数、不同业务各自的用户数、计费成功率、地址池的利用率等,具体需要结合实际需求确定,本实施例对此不做具体限定。
55.值得注意的是,考虑到网络设备的一些指标是厂家私有的,真实意义只有设备厂家知道;因此,在实际采集的任务中,基于设备厂家提供的指标采集数据即可,指标的具体含义可以咨询设备厂家。
56.需要说明的是,上述网络设备仅仅作为示例,并不构成具体限定,任何能够进行物联的设备,且需要基于采集到的物联的设备的相关数据进行指标计算,均可使用本实施例提供的指标计算方法。
57.步骤102、确定指标计算请求;其中,指标计算请求携带目标指标组或目标指标组的标识。
58.在业务方需要进行目标指标组的计算时,向服务提供方(电子设备)发起指标计算请求,例如可以采取http请求等方式。其中,指标计算请求中携带有用于需要计算的目标指标组或目标指标组的标识,从而服务提供方(电子设备)在接收到请求以后可以计算目标指标组内的各业务指标各自的值。
59.在实际应用中,不同目标业务组的可配置文件的命名不同,因此,目标指标组的标识可以为可配置文件的命名;对应的,基于目标指标组的标识即可匹配到可配置文件。
60.步骤103、确定目标指标组匹配的多个原始指标各自的值。
61.作为一种可行的实现方式,具体可通过如下实现方式确定目标指标组匹配的多个原始指标各自的值:
62.确定业务文件;其中,业务文件包括目标指标组匹配的多个原始指标各自的值;将业务文件映射成数据库引擎中的定义表;调用数据库引擎基于定义表读取业务文件并解析,确定多个原始指标各自的值。
63.该实现方式中,通过映射关联处理,避免数据先集中入库后定时计算造成集中数据库读写压力以及数据处理时延问题。
64.其中,数据库引擎可以理解为用于存储、处理和保护数据的核心服务。利用数据库引擎可控制访问权限并快速处理事务,从而满足需要处理大量数据的要求。示例地,数据库引擎为sql引擎,考虑到多个原始指标各自的值通常可能存储在远程系统内,因此,sql引擎优选分布式sql查询引擎,比如,prestodb/prestosql;基于prestodb/prestosql中connector的扩展机制,实现支持本地文件系统和远程文件系统的只读connector,以支持对于存储在文件系统中的数据文件的读取能力。
65.需要说明的是,在实际应用中,数据库引擎会创建一个对象,该对象用于存储定义表。
66.业务文件映射为数据库引擎中的定义表可以理解为按照数据库引擎的组织和结构将业务文件映射成数据库引擎中的定义表,从而使得数据库引擎可以基于该定义表获取业务文件并解析该业务文件。
67.在一个例子中,定义表包括业务文件的位置和业务文件的内容。
68.示例地,业务文件的位置可以为统一资源定位符。对应地,电子设备调用数据库引擎解析统一资源定位符以读取业务文件并解析,确定目标指标组中各业务指标各自的值。
69.示例地,业务文件的内容至少用于说明业务文件中的多个原始指标的值的位置。如业务文件为电子表格文件,则业务文件的内容至少用于说明业务文件中的多个原始指标各自的字段的位置。
70.值得注意的是,业务文件可以存在本地的数据库内,也可以存在远程的数据库内。本地的数据库可以理解为电子设备内的数据库,远程的数据库可以理解为其他电子设备内的数据库。
71.进一步的,定义表还可以包括分隔符。需要说明的是,分隔符用于对业务文件进行解析,以提取多个原始指标各自的值。在一些可能的情况下,若业务文件中存在特殊的分隔符,为了确保可以较为准确的对业务文件进行解析,因此需要定义分隔符。
72.在一个例子中,业务文件为标准文件。换言之,业务文件中的内容为标准化后的内容。
73.示例地,具体可通过如下实现方式确定业务文件:
74.存储多个目标指标组各自对应的数据标准化脚本;确定原始业务文件;其中,原始业务文件至少包括与目标指标组匹配的多个原始指标;执行目标指标组匹配的数据标准化脚本,对原始业务文件的内容进行标准化处理,确定业务文件。
75.需要说明的是,考虑到目标指标组的多个原始指标各自的值的来源不同,(如:不同的设备厂家),数据组织格式、数值单位、数据类型等都可能有不同的规格说明,因此需要进行标准化处理。而不同目标指标组的多个原始指标各自的值的来源不同,因此,需要存储不同目标指标组各自对应的数据标准化脚本。
76.其中,数据标准化脚本用于针对不同的原始业务文件的内容进行标准化,通常需要对不同的原始业务文件中的多个原始指标各自的值进行标准化。示例地,标准化可以为统一单位,统一小数点,统一时间表达的方式,补充缺失值等。
77.值得注意的是,数据标准化脚本通常以文件的形式保存在硬盘等存储介质中,因
limit)、在线的用户数(online)、bod业务的用户数(bodnum)、rptvsm业务的用户数(rptvsmnum)、互联网通信协议第四版的用户数(ipv4)、(互联网通信协议第六版的用户数(ipv6)和同时使用互联网通信协议第四版和第六版的用户数(dual)、用户类型(type)、网络模型(model),采集ip城域网华为me60 bras设备的相关指标的数据以资源文件和本地字典表的形式存储,目标指标组中的3个业务指标为图7示出的用户类型(use type)、总用户数(total user)、ipv4的用户数(ipv4)、ipv6的用户数(ipv6),以图5示出的计算规则配置模板生成目标指标组的计算过程规则sheet表。
94.另外,bod(bandwidth on demand)业务是一种针对用户实现动态分配带宽的增值业务,在用户有带宽调整需求时,可以通过portal server自助选择bod业务,业务动态激活和注销,不需要运营商通过更改配置完成带宽更改,同时也给运营商提供了更为灵活的基于业务的计费方式。rptvsm业务可以具体咨询设备厂家确定其具体含义。
95.如图4所示,具体的实施步骤如所示:
96.1)依托于分布式sql查询引擎prestodb/prestosql,创建一个空的schema。
97.2)获取设备信息,每5分钟生成一份资源文件1表6a,每5分钟生成一份资源文件2如表6b,本地字典表文件如表6c所示,并将资源文件、本地字典表文件映射为定义表,即prestodb/prestosql表。
98.3)确定以图5示出的计算规则配置模板生成的目标指标组的计算过程规则sheet表。
99.4)调用定义好的计算过程规则sheet表指示的计算规则生成如图7所示的目标指标组表。
100.5)保存生成的如图7所示的目标指标组表。
101.6)删除所有表、图、数据以及schema,即环境销毁。
102.需要说明的是,由于配置计算过程规则sheet表的人员是知道映射定义表的规则,因此,计算过程规则sheet表中的内容和定义表的内容是适配的。
103.本实施例的有益效果如下:
104.第一方面,采用基于excel形式定义目标指标组的计算规则,方便理解与维护。
105.第二方面,将指标中各种复杂转换处理问题,统一转换为数据库引擎的执行过程,逻辑清晰,有非常强的适用性,便于扩展。
106.第三方面,在数据进入数据库前进行映射关联处理,避免数据先集中入库后定时计算造成集中数据库读写压力以及数据处理时延问题。
107.基于与本发明方法实施例相同的构思,请参考图8,本发明实施例还提供了一种指标计算装置,包括:
108.文件存储模块801,用于存储电子表格软件生成的多个目标指标组各自对应的可配置文件;其中,所述可配置文件表示多个原始指标各自的值确定对应的目标指标组中各业务指标各自的值的计算规则;
109.请求确定模块802,用于确定指标计算请求;其中,所述指标计算请求携带目标指标组或目标指标组的标识;
110.数据确定模块803,用于确定所述目标指标组匹配的多个原始指标各自的值;
111.执行模块804,用于调用数据库引擎基于所述目标指标组匹配的可配置文件指示
的计算规则对所述匹配的多个原始指标各自的值进行计算,确定所述目标指标组中各业务指标各自的值。
112.作为一种可行的实现方式,所述数据确定模块803,包括:文件确定单元、映射单元及读取解析单元;其中,
113.所述文件确定单元,用于确定业务文件;其中,所述业务文件包括所述目标指标组匹配的多个原始指标各自的值;
114.所述映射单元,用于将所述业务文件映射成所述数据库引擎中的定义表;
115.所述读取解析单元,用于调用所述数据库引擎基于所述定义表读取所述业务文件并解析,确定所述多个原始指标各自的值。
116.作为一种可行的实现方式,所述装置还包括:定义表删除模块;其中,
117.所述定义表删除模块,用于确定所述目标指标组中各业务指标各自的值之后,删除所述定义表。
118.作为一种可行的实现方式,所述定义表包括所述业务文件的统一资源定位符;
119.所述读取解析单元,用于调用所述数据库引擎解析所述定义表中所述业务文件的统一资源定位符,读取所述业务文件。
120.作为一种可行的实现方式,所述定义表还包括所述业务文件的分隔符;
121.所述读取解析单元,还用于调用所述数据库引擎基于所述定义表中所述业务文件的分隔符,解析读取的所述业务文件。
122.作为一种可行的实现方式,所述装置还包括脚本存储模块:
123.所述脚本存储模块,用于存储多个目标指标组各自对应的数据标准化脚本;
124.所述文件确定单元,包括:文件确定子单元和标准化子单元;其中,
125.所述文件确定子单元,用于确定原始业务文件;其中,所述原始业务文件至少包括与所述目标指标组匹配的多个原始指标各自的值;
126.所述标准化子单元,用于基于所述目标指标组匹配的数据标准化脚本,对所述原始业务文件的内容进行标准化处理,确定业务文件。
127.作为一种可行的实现方式,所述文件确定单元,用于存储所述多个目标指标组中部分指标组各自对应的业务文件;确定所述目标指标组匹配的业务文件。
128.作为一种可行的实现方式,所述计算规则包括多个原始指标和对应的目标指标组之间的多个中间指标;
129.所述执行模块804,用于调用数据库引擎基于所述目标指标组匹配的可配置文件指示的计算规则对所述匹配的多个原始指标各自的值进行计算,确定所述多个中间指标各自的字段;基于所述多个中间指标各自的字段确定所述目标指标组中各业务指标各自的值。
130.作为一种可行的实现方式,所述可视配置文件通过所述电子表格软件打开后进行修改和重配置。
131.作为一种可行的实现方式,所述数据库引擎为sql引擎。
132.作为一种可行的实现方式,所述电子表格软件为excel软件。
133.作为一种可行的实现方式,所述装置还包括:保存模块和环境销毁模块;其中,
134.所述保存模块,用于保存所述目标指标组中各业务指标各自的值;
135.所述环境销毁模块,用于删除所述数据库引擎基于所述目标指标组匹配的可配置文件指示的计算规则对所述匹配的多个原始指标各自的值进行计算的过程中产生的内容。
136.图9是本发明实施例提供的一种电子设备的结构示意图。在硬件层面,该电子设备包括处理器901以及存储有执行指令的存储器902,可选地还包括内部总线903及网络接口904。其中,存储器902可能包含内存9021,例如高速随机存取存储器(random-access memory,ram),也可能还包括非易失性存储器9022(non-volatile memory),例如至少1个磁盘存储器等;处理器901、网络接口904和存储器902可以通过内部总线903相互连接,该内部总线903可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等;内部总线903可以分为地址总线、数据总线、控制总线等,为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。当然,该电子设备还可能包括其他业务所需要的硬件。当处理器901执行存储器902存储的执行指令时,处理器901执行本发明任意一个实施例中的方法,并至少用于执行如图1或图4所示的方法。
137.在一种可能实现的方式中,处理器从非易失性存储器中读取对应的执行指令到内存中然后运行,也可从其它设备上获取相应的执行指令,以在逻辑层面上形成一种指标计算装置。处理器执行存储器所存放的执行指令,以通过执行的执行指令实现本发明任实施例中提供的一种指标计算方法。
138.处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
139.本发明实施例还提供了一种计算机可读存储介质,包括执行指令,当电子设备的处理器执行执行指令时,所述处理器执行本发明任意一个实施例中提供的方法。该电子设备具体可以是如图9所示的电子设备;执行指令是一种指标计算装置所对应计算机程序。
140.本领域内的技术人员应明白,本发明的实施例可提供为方法或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或软件和硬件相结合的形式。
141.本发明中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
142.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
143.以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1