返回顶部
关闭软件导航
位置:首页 > 资讯 > 电商资讯>利用InformationSchema与阿里云账单治理API实现MaxCompute费用对账分摊统计
利用InformationSchema与阿里云账单治理API实现MaxCompute费用对账分摊统计

利用MaxComputeInformationSchema与阿里云交易和账单治理API实现MaxCompute费用对账分摊统计

很多的企业用户选择MaxCompute按量付费模式构建自己的数据平台,利用MaxCompute按作业付费的计费模型,在获得高性能的同时避免"IDLE"状态的不必要资源费用支出,仅为实际使用付费。

那么在一个规模比较大的公司,企业购买了MaxCompute服务,会支撑企业内部的不同部门、个人来使用MaxCompute来开展数据处理分析。为了更好地识别数据平台使用方的周期性花费成本,优化数据资源的使用,就有必要对作业的费用进行统计,从而确认不同人员或归属部门的作业数量、作业费用、作业时长、作业资源使用量等指标。基于这些指标进行成本分摊、作业优化等治理工作。

阿里云交易和账单系统包含了MaxCompute产品的费用信息及费用明细,通过关联交易和账单系统的计费明细与MaxCompute项目的作业明细或某时间段的账单费用,可以获得使用用户、作业明细信息(如提交人账号、作业SQL内容、作业资源使用大小等信息)与计费明细或账单费用间的关系,从而开展分析。

本文将介绍假如自动化实现MaxCompute按量付费项目的作业费用统计,您也可以通过阿里云交易和账单系统API获取其他需要的费用信息,扩展分析场景。

1、获得MaxCompute项目历史作业明细

MaxComputeInformation_Schema服务是MaxCompute产品的开放元数据服务,通过Information_Schema提供的一组视图,用户可以自助地查询访问到项目内的准实时的table,column,function等全量元数据信息,同时也提供了项目内近期的作业历史明细,供使用者自助查询使用。

通过元数据服务Information_Schema里面的作业历史表tasks_history视图,可以查询到准实时的项目作业历史明细。包括:项目名称、任务名称、Instanceid、开始时间、结束时间、任务复杂度、任务CPU使用情况等字段。

备注:Information_Schema目前正在灰度中,即将全面开放。

2、获取作业的计费明细数据

用户可以通过费用中心账号总览消费记录去查询具体的消费情况。

同时,格式阿里云交易和账单治理OpenAPI为用户提供治理阿里云产品售卖和财资能力,通过该api可以程序化获取MaxCompute作业计费明细数据。

调用QueryUserOmsData接口(阿里云的账单系统OMS),可以查询到具体计量信息编号、数据分类、存储、SQL读取量、公网上下行流量等字段信息。

3、关联计费明细与作业明细

通过表关联,查询到需要计算的数据结果

这些数据可以通过作业ID与计费明细数据进行关联后,您就获取各个作业明细的费用信息(例如,SQL费用=数据扫描量*复杂度),从而可以开展不同视角的分析。

需要强调的是:MaxCompute的计费都是以阿里云费用中心的出账结果及费用明细为准。

1.查询元数据服务里面的作业历史表tasks_history

例如,您登录访问的当前项目为myproject1,在myproject1中,可以通过查询INFORMATION_SCHEMA.tables获得当前myproject1中所有表的元数据信息。

INFORMATION_SCHEMA同时包含了作业历史视图,可以查询到当前项目内的作业历史信息,使用时注重添加日期分区进行过滤,例如。

查询历史表字段属性

如下如所示:

2.使用阿里云交易和账单治理API获取费用明细和分摊统计

方法1:手工下载上传方式

(一)首先在MaxCompute中创建结果输出表OMS表,建表语句如下:

方法一:手动从视图下载oms账单具体费用,将数据上传(tunnelupload)到odps对应输出表

手动下载步骤:s://help.aliyun.com/product/87964.html?spm=a2c4g.750001.list.245.5e907b138Ik9xM

进入阿里云用户中心:s://usercenter2.aliyun.com/home

返回旧版

费用中心>消费记录>使用记录

选择产品类型,填写使用期间,计算粒度,导出CSV格式

把oms数据定期取下来,然后上传到odps中创建的结果输出表(OdpsFeeDemo)

tunneluploadC:UsersDesktopaa.txtproject.tablename;

(二)进行表关联,将很终结果存储在上面创建的MaxComputeFee中

方法2:程序化API下载费用明细数据&上传到MaxCompute后分析

(一)在odps创建oms表OdpsFeeDemo,参考如下:

通过API下载OMS系统数据并上传到odps对于表格中

代码参考如下:

1)服务启动类Application

2)从odps接收数据ReceiveData

3)将接收数据上传到MaxCompute项目里建好的oms表,类名:OdpsServer

4)配置文件

5)现在将数据上传到odps里面对应的表,然后进行关联

--------------------------------------

本文作者:圣远

利用InformationSchema与阿里云账单治理API实现MaxCompute费用对账分摊统计1

原文链接:s://yq.aliyun.com/articles/713562?utm_content=g_

如果您觉得 利用InformationSchema与阿里云账单治理API实现MaxCompute费用对账分摊统计 这篇文章对您有用,请分享给您的好友,谢谢
文章地址:https://www.tianxianmao.com/article/online/13154.html
解放双手无尽可能,有问题添加天线猫微信