1.本技术涉及计算机技术领域,特别是涉及一种云计算产品的消耗确定方法及装置。
背景技术:2.当前所有云计算厂商,在客户需要根据已经产生的消耗费用来推算预估全月的总费用,从而把控资源用量使用情况,控制内部预算的时候,目前采用的方案是:基于提供的费用分析工具,支持用户查看账号维度一定日期范围(最多90天)的总费用预测。但现有技术方案虽然做到总费用预测,但仅仅只针对后付费进行了预测,没有包含其他类型的计费类别。而且不同的产品线背后其实是由不用的业务部门在负责,如果想查看指定产品线(业务部门)的预估消耗,该现有方案是不支持的。
技术实现要素:3.本技术实施例的目的在于提供一种云计算产品的消耗确定方法及装置,解决了现有技术中对于云计算产品的消耗确定比较单一的技术问题。具体技术方案如下:
4.在本技术实施的第一方面,首先提供了一种云计算产品的消耗确定方法,包括:基于账单表确定云计算产品的计量数据;基于所述计量数据确定所述云计算产品的成交价;所述成交价与成交时间存储到第一预设表中,并基于所述第一预设表确定所述云计算产品的消耗,其中所述消耗包括当日消耗、累计消耗和预估消耗。
5.在本技术实施的第二方面,还提供了一种云计算产品的消耗确定装置,包括:第一确定模块,用于基于账单表确定云计算产品的计量数据;第二确定模块,用于基于所述计量数据确定所述云计算产品的成交价;第三确定模块,用于所述成交价与成交时间存储到第一预设表中,并基于所述第一预设表确定所述云计算产品的消耗,其中所述消耗包括当日消耗、累计消耗和预估消耗。
6.在本技术实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
7.在本技术实施的第四方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,实现第一方面所述的方法步骤。
8.在本技术实施例中,可以根据云计算产品的计量数据确定该云计算产品的成交价格,进而根据该成交价格与时间的关系确定该云计算产品的当日消耗、累计消耗和预估消耗;也就是说,在本技术实施例中可以从多个维度确定云计算产品的消耗,丰富了确定云计算产品消耗的方式,从而解决了现有技术中对于云计算产品的消耗确定比较单一的问题。
附图说明
9.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
10.图1为本技术实施例中云计算产品的消耗确定方法流程图之一;
11.图2为本技术实施例中云计算产品的消耗确定方法流程图之二;
12.图3为本技术实施例中云计算产品的消耗确定方法流程图之三;
13.图4为本技术实施例中云计算产品的消耗确定装置的结构示意图之一;
14.图5为本技术实施例中云计算产品的消耗确定装置的结构示意图之二;
15.图6为本技术实施例中电子设备的结构示意图。
具体实施方式
16.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述地实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
17.在后续的描述中,使用用于表示元件的诸如“模块”、“单元”的后缀仅为了有利于本技术的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
18.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。本技术实施例提供了一种云计算产品的消耗确定方法,如图1所示,该方法包括以下步骤:
19.步骤102,基于账单表确定云计算产品的计量数据;
20.需要说明的是,本技术实施例中的云计算产品可以是固定带宽、套餐类带宽、实例等,其中,实例可以是云服务器。
21.步骤104,基于计量数据确定云计算产品的成交价;
22.其中,需要说明的是,这里的成交价是指云计算产品的实际交易价格,该价格可能比官网价格低,或者是与官网价格一致。
23.步骤106,成交价与成交时间存储到第一预设表中,并基于第一预设表确定云计算产品的消耗,其中消耗包括当日消耗、累计消耗和预估消耗。
24.其中,需要说明的是,本技术实施例中的累计消耗可以是当月累计消耗,或者当季度累计消耗或者是其他累计消耗;预估消耗是指未来某个时间点的累计消耗。
25.通过上述步骤102至步骤106,可以根据云计算产品的计量数据确定该云计算产品的成交价格,进而根据该成交价格与时间的关系确定该云计算产品的当日消耗、累计消耗和预估消耗;也就是说,在本技术实施例中可以从多个维度确定云计算产品的消耗,丰富了确定云计算产品消耗的方式,从而解决了现有技术中对于云计算产品的消耗确定比较单一的问题。
26.在本技术实施例中,对于上述步骤102中涉及到的基于账单表确定云计算产品的计量数据的方式,进一步可以包括:
27.步骤11,将账单表中的计量数据复制到消耗原始表中;
28.需要说明的是,本技术实施例中的账单表可以是云计算产品的正式账单表和商测账单表;其中,正式账单表是需要正式发布的账单表,商测账单表用于商测测试的账单表,
可以根据商测账单表对正式账单表中的计量数据进行调整。
29.步骤12,基于消耗原始表中的计量数据以及云计算产品的成交单价确定成交价。
30.其中,如果当前云计算产品是应用到其他国家则需要相应的货币汇率;另外,成交单价是指实际的成交单价,因为如果用户用量较大可能会以打折的方式与用户成交,则不会是官网价格。
31.通过上述步骤11和步骤12,将账单表中的计量数据复制到消耗原始表中,可以实现数据的隔离,即如果在计算过程中,消耗原始表的数据丢失或不准确,还可以重新将账单表中的计量数据复制到消耗原始表中。另外,通过成交单价与计量数据能够更加准确的计算出成交单价,而不是直接使用官网价格或出厂价格。
32.在本技术实施例中,对于上述步骤106中涉及到的基于第一预设表确定云计算产品的消耗的方式,进一步可以包括:
33.步骤21,基于第一预设表将出消耗日的成交价确定为第一云计算产品的当日消耗;
34.步骤22,基于第一预设表将截至出消耗日的每天计费的成交价的累加和值确定为第一云计算产品的累计消耗;
35.步骤23,基于第一预设表将累计消耗和出消耗日的成交价与当月剩余天数的乘积的和值确定为第一云计算产品的预估消耗。
36.对于上述步骤21至步骤23中涉及到的出消耗日就是指当日消耗,另外对于上述第一产品可以是实例、固定带宽、套餐类带宽等。以固定带宽为例,则该固定带宽的当日消耗=出消耗日的成交价;固定带宽的累计消耗=截至出消耗日的每天计费的成交价做累加;固定带宽的预估消耗=累计消耗+出消耗日的成交价*剩余天数;如果是确定当月预估消耗则该剩余天数为当月剩余天数,如果是计算季度预估消耗,则可以是该季度的剩余天数。
37.在本技术实施例中,对于上述步骤106中涉及到的基于第一预设表确定云计算产品的消耗的方式,进一步可以包括:
38.步骤31,基于第一预设表将计费所在天的成交价与月天数的比值确定为第二云计算产品的当日消耗;
39.步骤32,基于第一预设表将计费所在天的成交价与月天数比值再乘以月计费的天数的结果确定为第二云计算产品的累计消耗;
40.步骤33,基于第一预设表计费所在天的成交价确定为第二云计算产品的预估消耗。
41.对于上述步骤31至步骤33中涉及到的出消耗日就是指当日消耗,另外对于上述第二产品可以是带宽的月峰值类,例如,带宽的月峰值的当日消耗=计费所在天的成交价/月天数;带宽的月峰值的累计消耗=计费所在天的成交价/月天数*月天数;带宽的月峰值的预估消耗=计费所在天的成交价。
42.在本技术实施例中,对于上述步骤106中涉及到的基于第一预设表确定云计算产品的消耗的方式,进一步可以包括:
43.步骤41,基于第一预设表出消耗日的成交价确定为第三云计算产品的当日消耗;
44.步骤42,基于第一预设表将截至出消耗日的每天计费的成交价的累加之和确定为第三云计算产品的累计消耗;
45.步骤43,基于第一预设表将累计消耗和累计消耗与月计费天数的比值乘以当月剩余天数的和值确定为第三云计算产品的预估消耗。
46.对于上述步骤41至步骤43中涉及到的出消耗日就是指当日消耗,另外对于上述第三产品可以是带宽的日峰值类、日流量类。以带宽的日峰值类为例,则该带宽的日峰值类的当日消耗=出消耗日的成交价;带宽的日峰值类的累计消耗=截至出消耗日的每天计费的成交价做累加;带宽的日峰值类的预估消耗=累计消耗+(累计消耗/月计费天数)*剩余天数。
47.在本技术实施例中,对于上述步骤106中涉及到的所述基于所述第一预设表确定所述云计算产品的消耗的方式,进一步可以包括:
48.步骤51,基于所述第一预设表出消耗日的用量与所述出消耗日前一天的用量的差值比上出消耗日的用量再乘以出消耗日的成交价的结果确定为第四云计算产品的当日消耗;
49.步骤52,基于所述第一预设表将消耗日的成交价确定为所述第四云计算产品的累计消耗;
50.步骤52,基于所述第一预设表将所述累计消耗和所述累计消耗与月计费天数的比值乘以当月剩余天数的和值确定为所述第三云计算产品的预估消耗。
51.对于上述步骤51至步骤53中涉及到的出消耗日就是指当日消耗,另外对于上述第四产品可以是带宽的月流量类。则该月流量类的当日消耗=(出消耗日的用量-出消耗日前一天的用量)/出消耗日的用量*出消耗日的成交价;月流量类的累计消耗=出消耗日的成交价;月流量类的预估消耗=累计消耗+(累计消耗/月计费天数)*剩余天数。
52.需要说明的是,本技术实施例中涉及到的月计费天数是指当前月已计费的天数。
53.如图2所示,在本技术实施例的可选实施方式中,在图1的基础上本技术实施例的方法还可以包括:
54.步骤108,将云计算产品对应的用户信息和云计算产品的属性信息存储到第一预设表中;
55.其中,用户信息可以是用户的基本信息,例如客户名称、所属集团、邮箱等,云计算产品的属性信息可以是通过附属信息接口获取的服务开始时间、实例名称、ip地址等附属信息。
56.步骤110,将与多个云计算产品对应的多个第一预设表中的数据汇聚到第二预设表中。
57.通过上述步骤108和步骤110可知,该第一预设表为各云计算产品单独所对应的表,而第二预设表中则存储有多个云计算产品的相关信息。
58.下面结合本技术实施例的具体实施方式对本技术进行举例说明,该具体实施方式提供了一种云计算产品消耗的确定方法,如图3所示,该方法的步骤包括:
59.步骤301,数据搬运;
60.其中,需要先获取账单表数据,其中账单表包括正式账单表和商测账单表;
61.然后,分别从2个账单表(dw_)拷贝计量数据至2个(即正式和商测)消耗表(consume_),以形成正式消耗原始表和商测消耗原始表;其中,所述消耗原始表的作用在于和账单数据隔离;
62.步骤302,计算账单;
63.其中,计费系统获取消耗原始表的计量数据,根据用量请求价格,拉取汇率与美元账户(如果需要);然后,计算官网价(量与价匹配),基于官网价请求规则计算成交价,并将上述计算结果存到消耗表中,用于后续消耗的计算;
64.步骤303,计算消耗;
65.其中,根据账单计算的结果,计算当日消耗、累计消耗、预估消耗;然后,通过客户信息接口获取用户的基本信息,如客户名称、所属集团、邮箱等,通过附属信息接口获取服务开始时间、实例名称、ip地址等附属信息;将以上数据存储在日耗表汇总表;根据产品id将计费项名称、用量、当日消耗、累计消耗、月预估数据等数据汇总至各个产品线日耗表。
66.其中,针对不同的产品线,可以根据该产品线对应的官网价、成交价、折扣、计费标识、明细类型等字段,计算三个消耗(当日消耗、累计消耗、预估消耗)的值。
67.其中,在具体应用场景中,常见的云计算产品特征与消耗计算关系如下:
68.(1)实例/固定带宽/套餐类
69.当日消耗=出消耗日的成交价
70.累计消耗=截至出消耗日的每天计费的成交价做累加
71.预估消耗=累计消耗+出消耗日的成交价*剩余天数
72.(2)月峰值类
73.当日消耗=计费所在天的成交价/月天数
74.累计消耗=计费所在天的成交价/月天数*月mtd天数
75.预估消耗=计费所在天的成交价
76.(3)日峰值类
77.当日消耗=出消耗日的成交价
78.累计消耗=截至出消耗日的每天计费的成交价做累加
79.预估消耗=累计消耗+(累计消耗/月mtd计费天数)*剩余天数
80.(4)月流量类
81.当日消耗=(出消耗日的用量-出消耗日前一天的用量)/出消耗日的用量*出消耗日的成交价
82.累计消耗=出消耗日的成交价
83.预估消耗=累计消耗+(累计消耗/月mtd计费天数)*剩余天数
84.(5)日流量类
85.当日消耗=出消耗日的成交价
86.累计消耗=截至出消耗日的每天计费的成交价做累加
87.预估消耗=累计消耗+(累计消耗/月mtd计费天数)*剩余天数
88.步骤304,汇总数据(consume_d相关表):总汇总表、各产品线日耗表。
89.对应于上述图1,本技术实施例还提供了一种云计算产品的消耗确定装置,如图4所示,该装置包括:
90.第一确定模块42,用于基于账单表确定云计算产品的计量数据;
91.第二确定模块44,用于基于计量数据确定云计算产品的成交价;
92.第三确定模块46,用于成交价与成交时间存储到第一预设表中,并基于第一预设
表确定云计算产品的消耗,其中消耗包括当日消耗、累计消耗和预估消耗。
93.通过本技术实施例的装置,可以根据云计算产品的计量数据确定该云计算产品的成交价格,进而根据该成交价格与时间的关系确定该云计算产品的当日消耗、累计消耗和预估消耗;也就是说,在本技术实施例中可以从多个维度确定云计算产品的消耗,丰富了确定云计算产品消耗的方式,从而解决了现有技术中对于云计算产品的消耗确定比较单一的问题。
94.可选地,本技术实施例中的第一确定模块42进一步可以包括:复制单元,用于将账单表中的计量数据复制到消耗原始表中;第一确定单元,用于基于消耗原始表中的计量数据以及云计算产品的成交单价确定成交价。
95.可选地,本技术实施例中的第三确定模块46进一步可以包括:第二确定单元,用于基于第一预设表将出消耗日的成交价确定为第一云计算产品的当日消耗;第三确定单元,用于基于第一预设表将截至出消耗日的每天计费的成交价的累加和值确定为第一云计算产品的累计消耗;第四确定单元,用于基于第一预设表将累计消耗和出消耗日的成交价与当月剩余天数的乘积的和值确定为第一云计算产品的预估消耗。
96.可选地,本技术实施例中的第三确定模块46进一步可以包括:第五确定单元,用于基于第一预设表将计费所在天的成交价与月天数的比值确定为第二云计算产品的当日消耗;第六确定单元,用于基于第一预设表将计费所在天的成交价与月天数比值再乘以月计费的天数的结果确定为第二云计算产品的累计消耗;第七确定单元,用于基于第一预设表计费所在天的成交价确定为第二云计算产品的预估消耗。
97.可选地,本技术实施例中的第三确定模块46进一步可以包括:第八确定单元,用于基于第一预设表出消耗日的成交价确定为第三云计算产品的当日消耗;第九确定单元,用于基于第一预设表将截至出消耗日的每天计费的成交价的累加之和确定为第三云计算产品的累计消耗;第十确定单元,用于基于第一预设表将累计消耗和累计消耗与月计费天数的比值乘以当月剩余天数的和值确定为第三云计算产品的预估消耗。
98.可选地,本技术实施例中的第三确定模块46进一步可以包括:第十一确定单元,用于基于第一预设表出消耗日的用量与出消耗日前一天的用量的差值比上出消耗日的用量再乘以出消耗日的成交价的结果确定为第四云计算产品的当日消耗;第十二确定单元,用于基于第一预设表将消耗日的成交价确定为第四云计算产品的累计消耗;第十三确定单元,用于基于第一预设表将累计消耗和累计消耗与月计费天数的比值乘以当月剩余天数的和值确定为第三云计算产品的预估消耗。
99.在图4的基础上,如图5所示,本技术实施例中的装置还可以包括:
100.存储模块52,用于将云计算产品对应的用户信息和云计算产品的属性信息存储到第一预设表中;
101.汇聚模块54,用于将与多个云计算产品对应的多个第一预设表中的数据汇聚到第二预设表中。
102.本技术实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
103.存储器603,用于存放计算机程序;
104.处理器601,用于执行存储器603上所存放的程序时,实现图1中的方法步骤,其所起到的作用与图1中的方法步骤一样,在此不再赘述。
105.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
106.通信接口用于上述终端与其他设备之间的通信。
107.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
108.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
109.在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的云计算产品的消耗确定方法。
110.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的云计算产品的消耗确定方法。
111.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
112.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在
包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
113.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
114.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。