全部產品
Search
文件中心

:計算費用

更新時間:Oct 11, 2024

MaxCompute支援對SQL、MapReduce、Spark、Mars和MCQA作業隨用隨付。

說明

當執行個體欠費後有停機風險,系統會提醒或通知您,請及時續約,避免對您的服務造成影響。

MaxCompute有以下兩種計算計費方式:

  • 隨用隨付方式。即以作業的消耗作為計量指標,在作業執行成功後收取費用。隨用隨付分為SQL標準計費、SQL外部表格計費、MapReduce計費、Spark計費、Mars計費和MCQA計費六種計費方式。

  • 訂用帳戶方式。即您提前預定一部分資源。

MaxCompute開放的計算作業類型有SQL、MapReduce、Spark、Mars、MCQA、Graph及機器學習作業。其中SQL(不包括UDF)、MapReduce和Spark作業已啟動收費。Mars作業自2020年9月1日起啟動收費。MCQA作業自2020年10月1日起啟動收費。其他類型計算作業暫無收費計劃。

訂用帳戶

您可以預先購買一部分資源,MaxCompute會預留您所購買的資源。資源的基本單位定義為CU(Compute Unit)。1 CU包含的計算資源為4 GB記憶體加1 Core CPU。訂用帳戶計算資源套件括SQL、MapReduce、Spark等類型作業計算所需資源。

資源定義

記憶體

CPU

售價USD/月

1 CU

4 GB

1 CPU

22.0

當您購買訂用帳戶計算資源後,可以通過資源觀測進行資源監控管理,詳情請參見資源觀測

建議新使用者先採用隨用隨付方式進行結算。初期使用MaxCompute時,消耗的資源較少,採購CU預留資源會出現資源閑置。相對而言,隨用隨付方式成本更低。

SQL標準計費

每執行一個SQL作業,MaxCompute會根據作業的計算輸入資料量SQL複雜度進行計費。系統將在第二天對所有執行成功的SQL作業一次性匯總計費,體現在帳號賬單中,並自動從帳號餘額中扣除費用。

SQL作業的計費公式如下。

一次SQL計算費用 = 計算輸入資料量×SQL複雜度×SQL價格

SQL標準計費的單價如下。

計費項目

價格

SQL價格

0.0438 USD/GB

  • 計算輸入資料量:指一個SQL作業實際掃描的資料量,大部分的SQL作業有分區過濾和列裁剪,所以通常該值會遠小於源表資料大小。

    • 分區過濾:例如SQL語句中含有WHERE ds > 20130101ds是分區列,則計費的資料量僅包括實際讀取的分區,不包括其他分區的資料。

    • 列裁剪:例如SQL語句SELECT f1,f2,f3 FROM t1;,只計算t1表中f1、f2和f3列的資料量,其他列不參與計費。

  • SQL複雜度:先統計SQL語句中的關鍵字,再折算為SQL複雜度,詳情如下:

    • SQL關鍵字個數=JOIN個數+GROUP BY個數+ORDER BY個數+DISTINCT個數+視窗函數個數+MAX(INSERT個數|UPDATE個數|DELETE個數-1, 1)

    • SQL複雜度計算:

      • SQL關鍵字個數小於等於3,複雜度為1。

      • SQL關鍵字個數小於等於6,且大於等於4,複雜度為1.5。

      • SQL關鍵字個數小於等於19,且大於等於7,複雜度為2。

      • SQL關鍵字個數大於等於20,複雜度為4。

    更多關鍵字資訊,請參見JOINGROUP BYORDER BY視窗函數INSERTUPDATE|DELETE

複雜度計量命令格式如下。

COST SQL <SQL Sentence>;

命令樣本如下。

odps@ $odps_project >COST SQL SELECT DISTINCT total1 FROM
(SELECT id1, COUNT(f1) AS total1 FROM in1 GROUP BY id1) tmp1
ORDER BY total1 DESC LIMIT 100;
Intput:1825361100.8 Bytes
Complexity:1.5

樣本中,SQL關鍵字個數為:1個DISTINCT+1個GROUP BY+1個ORDER BY+MAX(0-1, 1)=4,SQL複雜度為1.5,資料量約為1.7 GB,則實際消費如下。

1.7 × 1.5 × 0.0438 = 0.11 USD
說明
  • 賬單在第二天06:00前出賬。

  • 執行失敗的SQL作業不計費。

  • 與儲存類似,SQL作業以壓縮後的資料量計費。

SQL外部表格計費

自2019年3月起,MaxCompute正式對SQL外部表格隨用隨付。

SQL外部表格的計費公式為:

一次SQL計算費用=計算輸入資料量×SQL價格

SQL外部表格的單價如下。

計費項目

價格

SQL價格

0.0044 USD/GB

SQL複雜度係數為1。當天的所有計量資訊在第二天做一次性匯總收費,並直接體現在您的賬戶賬單中。

說明
  • 賬單在第二天06:00前出賬。

  • 執行內外表混合作業時,系統會對兩種表分別計費。

  • 不支援預估外部表格參與計算的SQL作業費用。

MapReduce隨用隨付

自2017年12月19日起,MaxCompute正式對MapReduce作業隨用隨付。

MapReduce作業的計費公式為:

MapReduce作業當日計算費用=當日總計算時×單價(USD)

單價如下。

計費項目

價格

MapReduce價格

0.0690 USD/時/作業

MapReduce作業計算時的計算公式如下。

一個執行成功的MapReduce作業計算時=作業已耗用時間(小時)×作業調用的Core數量。

例如,一個MapReduce作業執行成功時調用了100 Core並消耗0.5小時,則計算時為100 Core×0.5小時=50

MapReduce作業執行成功後,系統會統計作業所消耗的計算時。系統將在第二天對所有執行成功的MapReduce作業一次性匯總計費,體現在帳號賬單中,並自動從帳號餘額中扣除費用。

說明
  • 賬單在第二天06:00前出賬。

  • 執行失敗的MapReduce作業不計費。

  • 作業排隊時間不計費。

  • 如果您購買了MaxCompute訂用帳戶服務,可以在購買的服務涵蓋範圍內免費執行MapReduce作業,不需要額外支付費用。

Spark隨用隨付

自2019年2月1日起,MaxCompute正式對Spark作業隨用隨付,詳情請參見MaxCompute Spark。Spark作業的計費公式為:

Spark作業當日計算費用 = 當日總計算時×單價(0.1041 USD/時/作業)

Spark作業的計算時計算方式如下。

Spark作業計算時=MAX(CPU×時間長度, 向上取整(記憶體×時間長度/4))

其中:

  • 需要您提供計算消耗的CPU Core數量、啟動並執行時間長度以及記憶體量。

  • 1個計算時包含1 CPU Core和4 GB記憶體。

例如,執行Spark作業使用2 CPU Core和5 GB記憶體,運行1小時,則計算時為MAX(2×1, 向上取整(5×1/4))=2。執行Spark作業使用2 CPU Core和10 GB記憶體,運行1小時,則計算時為MAX(2×1, 向上取整(10×1/4))=3

Spark作業執行成功後,系統會統計作業所消耗的計算時。系統將在第二天對所有執行成功的Spark作業一次性匯總計費,體現在帳號賬單中,並自動從帳號餘額中扣除費用。

說明
  • 賬單在第二天06:00前出賬。

  • 作業排隊時間不計費。

  • 相同作業會因為指定資源的大小不同而產生費用波動。

  • 如果您購買了MaxCompute訂用帳戶服務,可以在購買的服務涵蓋範圍內免費執行Spark作業,不需要額外支付費用。

資料科學(Mars)隨用隨付

自2020年9月1日起,MaxCompute正式對Mars作業隨用隨付,詳情請參見資料科學(Mars)。Mars作業的計費公式為:

Mars作業當日計算費用=當日總計算時×單價(0.1041 USD/時/作業)

Mars作業的計算時詳情如下:

  • 計算消耗的CPU Core及記憶體數量。

  • 1計算時包含1 CPU Core和4 GB記憶體。

  • 計算方法為MAX(CPU×時間長度, 向上取整(記憶體×時間長度/4))

    例如,執行Mars作業使用2 CPU Core和5 GB記憶體,運行1小時,則計算時為MAX(2×1, 向上取整(5×1/4))=2。執行Mars作業使用2 CPU Core和10 GB記憶體,運行1小時,則計算時為MAX(2×1, 向上取整(10×1/4))=3

Mars作業執行成功後,系統會統計作業所消耗的計算時。系統將在第二天對所有執行成功的Mars作業一次性匯總計費,體現在帳號賬單中,並自動從帳號餘額中扣除費用。

說明
  • 賬單在第二天06:00前出賬。

  • 作業排隊時間不計費。

  • 相同作業會因為指定資源的大小不同而產生費用波動。

  • 如果您購買了MaxCompute訂用帳戶服務,可以在購買的服務涵蓋範圍內免費執行Mars作業,不需要額外支付費用。

查詢加速(MCQA)隨用隨付

自2020年10月1日起,MaxCompute正式對MCQA作業隨用隨付,詳情請參見查詢加速(MCQA)

每執行一次MCQA作業,MaxCompute將根據作業的輸入資料量進行計費。當天所有MCQA作業的計費資訊將在第二天一次性匯總。

MCQA作業的計費公式為:

一次MCQA作業費用=查詢輸入資料量×單價(0.0438 USD/GB)
說明
  • MCQA作業使用單獨的計算資源。即使您購買了MaxCompute訂用帳戶服務,執行MCQA作業時,MaxCompute也會按照查詢作業掃描的資料量計費。

  • MaxCompute按照每條查詢作業掃描的資料量(每條查詢至少10 MB)計費。對於取消的查詢作業,按實際掃描的資料量計費。

  • 賬單在第二天06:00前出賬。

  • 不查詢不產生任何費用。

  • MaxCompute預設對資料進行列式儲存和資料壓縮。MaxCompute按照壓縮後的資料量計算資料掃描量。

  • 查詢分區表時,您可以應用分區過濾條件,減少資料掃描量並提升查詢效能。

  • 中國(香港)、新加坡、印尼(雅加達) 、馬來西亞(吉隆坡)地區已開通MCQA作業隨用隨付服務,處於公測階段,其他地區將陸續開放。