如何利用数据湖探索进行账单分析与优化

举报
杜子 发表于 2020/06/01 17:20:15 2020/06/01
【摘要】 数据湖探索(DLI)作为华为云大数据分析平台,计费项有存储费用与计算费用,计费类型有包周期,包套餐和按需。本文简单介绍下DLI的计费,并使用华为云DLI上的实际消费数据(文中涉及账户的信息已脱敏),在DLI的大数据分析平台上分析,找出费用优化的空间,并给出使用DLI过程中降成本的一些措施。一、DLI的计费简介数据湖探索服务目前支持三种作业:SQL作业,Flink作业和Spark作业。SQL作...

数据湖探索(DLI)作为华为云大数据分析平台,计费项有存储费用与计算费用,计费类型有包周期,包套餐和按需。本文简单介绍下DLI的计费,并使用华为云DLI上的实际消费数据(文中涉及账户的信息已脱敏),在DLI的大数据分析平台上分析,找出费用优化的空间,并给出使用DLI过程中降成本的一些措施。

一、DLI的计费简介

数据湖探索服务目前支持三种作业:SQL作业,Flink作业和Spark作业。

SQL作业的计费包括存储计费和计算计费,其中计算计费包括包年包月计费和按需计费两种。

包年包月计费根据购买周期进行扣费,推荐使用包年包月模式,价格优惠且在周期内独享计算资源。

按需计费以小时为单位进行扣费。按需计费又分为按CU时计费和按扫描数据量计费,这两种计费方式是互斥的,可根据需要选择其中一种。建议优先选择按CU时计费,可资源独享,且成本核算清晰。同时,按CU时计费还提供套餐包的购买和使用。

CU时资费=CU数*使用时长*单价。使用时长按自然小时计费,不足一个小时按一个小时计费。

扫描数据量资费=执行SQL时产生的扫描数据量*单价。若计算任务超时或失败,则当次计算不收取费用。

Flink作业和Spark作业的计费只有计算计费,具体计费规则与SQL作业相同。

     具体计费规则可以参考华为云官网

https://www.huaweicloud.com/pricing.html?tab=detail#/dli

 

二、如何使用DLI来分析消费数据并进行成本优化。

我们选取以我们账户的实际消费数据为基础,在DLI上分析该账户消费结构,找出开支较大的资源或用户,并给出降成本的优化措施。

1、获取消费明细数据

1.1 使用华为云账户登录控制台

1.2 通过费用中心->消费汇总进入费用中心。


1.3 在消费汇总中发现数据湖探索服务消费较多,展开可以发现DLI计算资源使用量消费最多。


1.4 点击DLI计算资源使用量后面的明细链接进入消费明细列表,选择时间范围,导出该段时间内的消费明细记录

1.5 下载消费明细数据。


2、在DLI上进行消费明细分析

2.1 上传刚才下载的消费明细数据到OBS上

2.2 在数据湖探索服务中创建表

  下载的文件中包含时间用量等,按表头意义在DLI上创建表,其中第20列为费用。

CREATE TABLE `spending` (
  no string,
  time string,
  account_period string,
  supplier string,
  region string,
  product_type string,
  resource_type string,
  resource_id string,
  resouce_name string,
  tag string,
  epid string,
  ep_name string,
  product string,
  speccode string,
  mode string,
  type string,
  size string,
  unit string,
  `c18` STRING,
  `amount` STRING,
  `c20` STRING,
  `c21` STRING,
  `c22` STRING,
  `c23` STRING,
  `c24` STRING,
  `c25` STRING,
  `c26` STRING,
  `billtime` timestamp,
  `c28` STRING,
  `c29` STRING,
  `c30` STRING
) USING csv options (
  path 'obs://xxx/Spendings(ByTransaction)_20200501_20200531.csv',
  header true
)


2.3 查询该时间内消费最高的resource_id, resource_name

  通过以下语句我们发现sqlflink队列使用的费用均为1842元,在总费用3754元中占比98%

select resource_id, resouce_name, sum(size) as usage, sum(amount) as sum_amount from spending group by resource_id, resouce_name order by sum_amount desc

2.4 通过以上语句我们发现sql, flink 2个资源消费最多。我们使用以下语句具体分析下这两个资源消费的周期的时间段。

select * from spending where resource_id = 'd91d4616-b10c-471a-820d-e676e6c5f4b4' order by billtime

我们发现从sql队列从2020-05-14 17:00:00 GMT+08:00开始,每小时产生5.6费用,持续到2020-05-28 10:00:00 GMT+08:00。说明sql这个队列在这段时间在持续使用。

同样我们可以发现flink队列在2020-05-14 17:00:00 GMT+08:002020-05-28 10:00:00 GMT+08:00持续消费。

3,成本优化建议

通过以上分析我们知道sqlflink这两个队列几乎是在持续使用,因些这种队列建议用户通过购买包周期队列来降低使用成本。另外对于明确需要多大CU时的作业,也可以提前购买对应的CU时套餐,来降低使用成本。

企业中的业务使用模式多且经常变化,成本管理员通常并不能全面及时了解花销较大的业务在哪里,哪些是合理的,哪些是不合理的,通过在DLI对费用明细进行分析可以及时发现企业花销不合理的地方,及时进行成本管理,可以降低企业使用华为云的成本。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。