文档首页/ 费用中心/ 常见问题/ 账单/ 月度结算客户/ 为什么通过使用量(定价量纲)计算出来的应付金额和华为云显示的应付金额存在精度误差?
更新时间:2024-08-26 GMT+08:00

为什么通过使用量(定价量纲)计算出来的应付金额和华为云显示的应付金额存在精度误差?

账单管理页面(例如:账单详情页面)列表中,新增“使用量(定价量纲)”字段,即按照产品上架时定价采用的使用量单位展示使用量

使用量(定价量纲)=使用量/使用量转换比率。转换后的值最多保留小数点后十位,截断处理。

例如,按时长计费的资源,使用量单位(定价量纲)为小时,使用量单位为秒,则使用量转换比率=3600。使用量(定价量纲)=1/3600,截取小数点后十位,为0.0002777777。

以按需资源简单定价算价为例,通过使用量(定价量纲)计算应付金额时,公式如下:

  • 有线性大小算价:
    • 官网价=(使用量/使用量转换比率)*单价*线性大小
    • 应付金额=(使用量/使用量转换比率)*单价*线性大小-优惠金额。

      其中,“线性大小”通过云服务产品的规格查看。例如:下图云硬盘的规格为:普通IO|1000GB,1000GB即为线性大小。

      示例:1GB的云硬盘定价为0.00006400美元/1小时,客户按需使用1000GB大小的云硬盘,实际使用25874秒,优惠金额为0.00。则未出账的应付金额为(25874/3600)* 0.00006400*1000=7.1872222222*0.00006400*1000=0.45998222美元,出账后实际应付金额进行四舍五入到2位小数,为0.46美元。

  • 无线性大小算价:
    • 官网价=(使用量/使用量转换比率)*单价
    • 应付金额=(使用量/使用量转换比率)*单价-优惠金额。

      无线性大小的云服务产品,规格中不携带该参数。例如下图中云主机的规格为:通用计算型|s3.4xlarge.2|16vCPUs|32GB|linux

      示例:云主机的定价为0.04650000美元/1小时,客户按需使用该云主机,实际使用25874秒,优惠金额为0.00。则未出账的应付金额为(25874/3600)* 0.04650000=7.1872222222*0.04650000=0.33420583美元,出账后实际应付金额进行四舍五入到2位小数,为0.33美元。

华为云显示的应付金额通过使用量使用量单位计算,使用量单位通常为最小精度,如秒,以确保数据精确。

通过使用量(定价量纲)计算应付金额时,使用量和使用量(定价量纲)在转换过程中,可能由于截断处理导致数据偏差,造成通过使用量(定价量纲)计算出来的应付金额和华为云显示的应付金额存在精度误差。