MaxCompute对存储、计算、下载操作进行计量计费。本文向您介绍如何选择MaxCompute按量计费和包年包月两种购买方式,以及如何进行初步的成本估算。

计量计费项

MaxCompute中,计量计费项如下所示。
  • 存储费用:按照存储在MaxCompute的数据的容量大小进行阶梯计费。
  • 计算费用:MaxCompute分按量计费和包年包月两种计算计费方式。
    • 包年包月:此方式仅在阿里云大数据计算服务提供,包括SQL、MapReduce等计算任务。
      说明 如果您选择包年包月,MaxCompute会为您预留所购买的资源。我们将此种资源的基本单位定义为CU(Compute Unit),1CU包含的计算资源为4GB内存、1核CPU。以TPC-DS标准对1TB大小的数据集进行性能测试,数据表明如果您使用MaxCompute 160CU,则执行TPC-DS的99个SQL任务,平均每个任务约需要5分钟。您可以参考上述数据用于CU购买量估算。
    • 按量计费:按量计费方式针对SQL任务、MapReduce任务等计算任务进行计费。
      • SQL任务按量计费:即SQL任务按I/O按量计费。标准版开发者版的计费方式不同。详细请参见SQL任务按量计费
      • MapReduce按量计费:即MapReduce任务按量进行计费,目前仅标准版支持MapReduce任务。
        说明 若您担心按量计费项目每天消费过高,可以通过云监控配置消费监控告警,按Project粒度配置SQL、MR每日消费总额上限告警,及时获悉当日SQL、MR的累计消费,以便及时介入检查任务是否正常。具体告警配置请参见监控报警
  • 下载费用: MaxCompute将按照外网下载的数据大小进行计费。
    说明 数据导入MaxCompute不计费。

结算说明:账单以Project(项目空间)为单位统计,结算周期为天。

报价速算器:MaxCompute报价速算器下载

有关计量计费的详细计算方式,请参见查看账单详情

计费常见问题请参见计量计费常见问题

计费方式选择

MaxCompute提供按量计费和包年包月两种计算计费方式。
说明 如果您是新用户,建议您先采用按量计费的方式进行结算。初期使用MaxCompute时,消耗的资源较少,采购CU预留资源会导致资源闲置。相对而言,按量计费方式成本会更低。
通常,针对同一业务创建两个项目。 您也可以通过创建DataWorks标准模式工作空间(详细请参见创建工作空间),自动生成两个项目:
  • 开发项目:通常用于工程师开发调试,作业随机性大,数据量小。建议您使用CU包年包月模式,它能够帮您有效控制成本,将资源消耗控制在一定范围内。
  • 生产项目:您的作业相对稳定(经过开发调试再上线),可以考虑使用按量计费模式,以避免资源闲置。

目前MaxCompute开放的计算任务类型有SQL、UDF、MapReduce、Graph、 Lightning(交互式分析)、Spark和机器学习作业。目前对SQL(不包含UDF)、MapReduce、PyODPS任务、 Lightning(交互式分析)和Spark计算任务进行收费,其他类型的作业暂不收费。PyODPS任务底层执行的是SQL任务,费用参考SQL的计量计费逻辑。

说明 有关UDF、Graph及机器学习的收费,请关注阿里云的相关公告。

在估算存储成本时,请您特别注意MaxCompute采用压缩存储,通常能压缩到原文件大小的1/5 。MaxCompute存储按照压缩后的大小计费。估算结果仅供参考,实际结果请以账单为准。

SQL计算费用估算

如果您选择按量计费,成本控制成为使用的关键。建议您在实际生产环境中,即正式上线一个分析SQL前,能够通过计量预估(Cost SQL命令)命令估算该SQL作业的费用。如果您使用的开发工具为Intellij IDEA,也可以在提交SQL脚本时自动估算费用

计算任务包年包月模式说明

  • 通常情况下,每个进程占用1个CU的资源。如果您采购了10个CU,而提交的作业需要100个进程并发,则这个作业会被分成10轮进行,每一轮10个进程,每个进程占用1个CU的资源。
  • MaxCompute为您提供调整每个进程占用内存的能力。详情请参见Cost SQL
    说明 如果您的SQL中使用到了SQL UDF,那么每个进程将会占用2个CU的资源。

MaxCompute计算包年包月详情请参见计算费用(包年包月)