計算 Compute 彈性使用承諾可省下的費用

購買按照支出計算的 Compute 彈性承諾使用合約,即可享有 Compute 彈性承諾使用折扣 (CUD)。如果您可預測支出需求,且支出範圍涵蓋單一服務以外的用途,就非常適合使用 Compute 彈性 CUD。Google Cloud Compute 彈性 CUD 適用於下列一或多項服務的支出:

  • Compute Engine
  • Google Kubernetes Engine
  • Cloud Run

您可以購買 1 年期或 3 年期的單一彈性承諾使用合約,涵蓋這三項服務的所有符合資格支出。購買 Compute 彈性承諾使用合約時,您必須承諾在下列一或多項服務中,每小時支出達到一定金額,才能使用符合資格的資源。

您可以存取資訊主頁或分析報表,查看約期支出摘要。如要進一步瞭解如何分析特定服務的按照支出計算承諾使用合約,請參閱「分析按照支出計算承諾使用合約的成效」。

請參閱本頁面的指南,瞭解如何執行下列工作:

查看分析報表中的 Compute 彈性承諾

您可以在資訊主頁和分析報表中,查看為 Cloud Billing 帳戶購買的所有 CUD 摘要。

分析頁面會顯示篩選器指定期間的 Compute 彈性 CUD 詳細資料,包括摘要資訊卡堆疊長條圖,以及承諾總額的摘要表格

承諾使用折扣分析報表和長條圖範例,顯示篩選列中的彈性承諾,以及摘要資訊卡、堆積長條圖和摘要表格。

您可以在「CUD 分析」頁面購買承諾使用合約。 如要在查看分析頁面時購買新的承諾方案,請選取「購買」

如要查看及購買承諾使用合約的CUD 建議,請選取「建議」

如果帳戶幣別不是美元,您可以使用分析報表查看以當地幣別計算的節省金額、分析圖表詳細資料、承諾費用涵蓋的費用,以及符合資格但未涵蓋的費用。有效承諾使用價格會以美元和當地幣別顯示。

摘要資訊卡

分析摘要資訊卡會顯示在堆疊長條圖上方,並顯示所選承諾的下列詳細資料。

  • 「Active commitment」(有效使用承諾):針對所選資源,目前已購買的承諾數量。
  • 節省金額:您在指定期間內購買承諾使用合約所節省的金額。
  • 使用率:在指定期間內,您購買的承諾使用合約使用率百分比。
  • 涵蓋範圍:您購買的承諾使用合約涵蓋範圍,在指定期內合格用量所占的百分比。

堆疊長條圖

堆疊長條圖會顯示在摘要資訊卡下方和摘要表格上方,並顯示所選承諾的下列詳細資料。

  • 建議承諾:購買承諾推薦工具建議的額外 CUD 後,預估可節省的費用。
  • Compute 彈性承諾使用折扣隨選費率 - 您預購的使用承諾數量 (虛線)。
  • Compute 彈性承諾使用折扣涵蓋的費用 - CUD 抵免額涵蓋的平均每小時使用費用 (長條圖中間部分,以綠色表示)。
  • Compute 依資源計算的承諾使用合約 - CUD 抵免額涵蓋的平均每小時用量費用 (長條圖的下半部,為藍色)。
  • 不符合資格的費用 - 按照標準無折扣的費率計收的平均每小時用量費用 (長條圖頂端,灰色部分)。

如要瞭解有效承諾的每月費用,請參閱費用明細報表中的「承諾費用」

如要查看某一天的詳細資料,請將滑鼠指標懸停在當天的長條上。

摘要表格

堆疊長條圖下方是摘要表格,位於分析頁面底部,會顯示所選時間範圍內的匯總數量和每小時平均值。

瞭解帳單

Google Cloud 使用資產負債表格式的帳單:

  1. 系統會向您收取承諾使用費用,也就是涵蓋用量的折扣費用。無論用量多寡,系統都會定期收取這筆費用。
  2. 系統會按照資源的標準以量計價費用向您收費。
  3. 您會收到承諾使用折扣抵免額,並以負值費用顯示在帳單中。這些抵免金會抵銷承諾使用合約涵蓋的合格隨選費用。

這三項要素的淨影響是,您可獲得承諾涵蓋用量的折扣。承諾費用 (1)承諾使用折扣抵免額 (3) 的總和,就是您透過 CUD 節省的費用。

使用量等於承諾量的範例

這個範例顯示 Cloud Billing 帳戶的依支出計算 CUD,等於一小時期間的使用量。

您購買一年期承諾使用合約,並承諾每小時支出 $50 美元,用於可使用 Compute 彈性 CUD 的 SKU。承諾使用一年可享 28% 的折扣,因此每小時的淨成本為 $36 美元。

  1. 系統會向你收取 $36 美元的承諾費用。
  2. 因此系統會向您收取 $50 美元的以量計價費用。
  3. 您會收到 $50 美元的抵免額,抵銷 $50 美元的隨選費用。

總費用 = $36 + $50 - $50 = $36

在本例中,您的 Compute 彈性承諾方案涵蓋所有用量,因此不會產生超額費用。使用彈性 CUD 後,該小時的最終費用為 $36 美元。如果沒有折扣,一小時的總費用為 $50 美元。

使用量超過承諾量的範例

這個範例顯示 Cloud Billing 帳戶的實際用量超過所購買的依支出計算 CUD。因此會產生超額費用,您必須為超出承諾用量的部分支付以量計價費率。

您購買一年期承諾使用合約,並承諾在可使用 Compute 彈性 CUD 的 SKU 上,每小時支出 $40 美元 (以隨選費率計算)。承諾使用 1 年可享 28% 的折扣,因此每小時的淨成本為 $28.80 美元。

  1. 系統會向你收取 $28.80 美元的承諾費用。
  2. 因此系統會向您收取 $50 美元的以量計價費用。
  3. 您獲得 $40 美元的抵免額,可抵銷 $40 美元的隨選費用。

總費用 = $28.80 + $50 - $40 = $38.80

在這個範例中,彈性 CUD 可折抵部分用量。您以隨選費率支付了 $10 美元的超額費用,並獲得承諾使用折扣,因此承諾使用折扣涵蓋的 $40 美元等值費用,可享有 28% 的折扣。使用 CUD 後,該小時的最終費用為 $38.80 美元。如果沒有折扣,一小時的總費用為 $50 美元。

使用量低於承諾量的範例

這個範例顯示 Cloud Billing 帳戶的實際用量低於購買的依支出計算 CUD。這會導致承諾使用餘額未用完。

您購買一年期承諾使用合約,並承諾每小時支出 $60 美元,用於可使用 Compute 彈性 CUD 的 SKU。承諾使用 1 年,即可享有 28% 的折扣,因此每小時的淨成本為 $43.20 美元。

  1. 系統會向你收取 $43.20 美元的承諾費用。
  2. 因此系統會向您收取 $50 美元的以量計價費用。
  3. 您會收到 $50 美元的抵免額,抵銷 $50 美元的隨選費用。

總費用 = $43.20 + $50 - $50 = $43.20

在本例中,您的 CUD 可折抵所有用量,因此沒有超出用量上限。不過,您承諾的隨選等值支出為 $60 美元,但實際支出只有 $50 美元,因此最後 $10 美元的抵免額並未用完。套用 CUD 後,每小時的最終費用為 $43.20 美元。如果沒有折扣,一小時的總費用為 $50 美元。

解讀月結單或對帳單

您可以在月結單或對帳單上查看依支出計算的 CUD 的所有三個部分。

  • 承諾使用費用:系統會依據 SKU 追蹤您購買的按照支出計算承諾使用合約費用。SKU 說明的格式為: 承諾 - 以金額為準

    • 如為 1 年期 Compute 彈性 CUD 的承諾費用,SKU 說明會顯示為「承諾 - 以金額為準 v1:1 年」
    • 3 年期 Compute 彈性 CUD 的承諾費用 SKU 說明會顯示為「承諾 - 以金額為準 v1:3 年」
  • 隨選費用 - 系統會依 SKU 顯示您用量的個別費用,並以隨選等值費用計算。查看各項服務的「SKU 說明」欄。例如「在美洲執行的 N1 CORE」

  • 抵免額:這些抵免額會扣抵 CUD 涵蓋的等值隨選費用。每筆抵免額的資訊會顯示在「抵免額類型」、「抵免額 ID」和「抵免額名稱」欄中。「SKU 說明」欄會顯示獲得抵免額的服務。

    舉例來說,如果使用「在美洲執行的 N1 CORE」,Compute 彈性 CUD 的抵免額會顯示為:

    • 抵免額類型:COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE
    • 抵免額名稱:承諾使用折扣 - 以金額為準:GCE 承諾使用合約
    • SKU 說明:在美洲執行的 N1 核心

分析月結單或對帳單上的約定費用和抵免額

如要查看及分析特定月結單或對帳單的費用和抵免額明細,請存取費用表報表。這項費用管理工具可協助您瞭解應付憑據上的費用。

開啟費用表報表

如要在費用表中查看 CUD 詳細資料,請先按照下列方式設定報表:

  1. 將報表的 資料表設定「分組依據」設定設為「不分組」,即可查看單層式表格

  2. 在「資料欄顯示選項」選取器中,確認「抵免額類型」和「抵免額名稱」欄顯示在畫面中。

如要查看 Compute 彈性 CUD 的詳細約定費用,請在「SKU 說明」欄中尋找「約定 - 以金額為準」

  • 在表格中,您可以依「SKU 說明」欄排序,並尋找承諾 SKU。所有 CUD SKU 說明都包含「承諾」這個關鍵字。

  • 在「SKU」篩選器中,您可以只篩選出承諾 SKU。所有 CUD SKU 都包含關鍵字「Commitment」。Compute 彈性承諾使用方案的 SKU 說明遵循以下模式:承諾使用方案 - 依金額計算 v1:GCE,適用於 [時間範圍]

  • 在「服務」篩選器中,您可以只篩選要查看的服務。舉例來說,如要只查看 Compute Engine 用量的約定費用,請在「服務」篩選條件中選取 Compute Engine。

如要查看 Compute 彈性 CUD 的用量費用和使用承諾抵免額,請按照下列步驟操作:

  1. 在表格中,以遞增順序排序「信用額度類型」欄

  2. 在「服務」篩選器中,選取「Compute Engine」,依支援 Compute 彈性承諾的服務進行篩選。

  3. 如果資料列顯示的抵免額類型COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE,且抵免額名稱Committed use discount - dollar based: GCE Commitments,請在「SKU 說明」欄中,記下獲得折扣的特定執行個體或服務。例如「在美洲執行的 N1 預先定義執行個體 RAM」

  4. SKU 說明排序,找出獲得折扣的特定執行個體或服務列。例如「在美洲執行的 N1 預先定義執行個體 RAM」

  5. 針對特定 SKU,找出所有以隨選等值價格計費的用量費用資料列,以及顯示 CUD 抵免額的資料列,抵銷 CUD 涵蓋的隨選等值費用部分。

舉例來說,在費用表格報表中,您可能會看到「在美洲執行的 N1 預先定義執行個體 RAM」的下列費用和抵免額:

SKU 說明 抵免額類型 抵免額名稱 費用
在美洲執行的 N1 預先定義執行個體 RAM     $10.25 美元
在美洲執行的 N1 預先定義執行個體 RAM COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE 承諾使用折扣 - 以金額為準:GCE 承諾 $-7.25
在美洲執行的 N1 預先定義執行個體 RAM COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE 承諾使用折扣 - 以金額為準:GCE 承諾 $-3.00

瞭解 Cloud Billing 報表

您可以透過 Cloud 帳單報表查看 Google Cloud 使用費用和抵免額,並探索及分析趨勢。Cloud Billing 報表提供多種可供使用者設定的選項,方便您查看重要費用,包括查看抵免額的選項。

開啟 Cloud Billing 報表

查看 Compute 彈性承諾使用合約

如要查看 Cloud 帳單報表中的 Compute 彈性承諾,請設定特定報表篩選條件

  • 在「抵免額」篩選器中,選取「承諾使用折扣 (依據支出計算)」
  • 在「SKU」篩選器中,搜尋並選取含有「GCE for 1 year」(GCE 1 年期) 或「GCE for 3 years」(GCE 3 年期) 的 SKU。

承諾使用折扣費用報表範例,附註指出承諾 - 以金額為準的 SKU 篩選結果,以及抵免額的選取項目

查看承諾使用合約元件

如要查看包含 CUD 的個別元件,請依 SKU 分組費用。預設報表檢視畫面 (未依 SKU 分組) 不會細分 CUD 元件,而是會納入這三個元件的淨值。

查看承諾費用

如要只查看目前的承諾費用,請使用SKU 篩選器,將報表結果限制為相關承諾費用 SKU。舉例來說,選取「SKU」篩選器,然後輸入 Commitment [YOUR COMMITMENT TYPE]

如要瞭解承諾費用和抵免額如何套用至 Cloud 帳單帳戶和專案,請參閱「承諾使用折扣費用和抵免額的歸因」。

在 Cloud Billing BigQuery 匯出資料中查看 Compute 彈性 CUD

您可以將詳細的帳單資料匯出至 BigQuery,方法是使用 Cloud Billing 匯出功能。 Google Cloud

使用下列查詢,在 BigQuery 匯出資料中查看承諾費用

標準 SQL

SELECT
    invoice.month AS invoice_month,
    SUM(cost) as commitment_fees
FROM PROJECT.DATASET.TABLE
WHERE sku.description LIKE "%GCE for 1 year%"
OR sku.description LIKE "%GCE for 3 year%"
GROUP BY 1
;

如要查看已承諾用量抵免額,請使用下列查詢範例:

標準 SQL

SELECT
    invoice.month AS invoice_month,
    SUM(credits.amount) as CUD_credits,
FROM PROJECT.DATASET.TABLE
LEFT JOIN UNNEST(credits) AS credits
WHERE credits.full_name LIKE 'Committed use discount - dollar based: GCE Commitments%'
GROUP BY 1
;

如要查看所有用量 SKU 扣除的抵免額和承諾費用,請使用下列範例查詢:

標準 SQL

SELECT * FROM project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX
LEFT JOIN UNNEST(credits) AS credits
WHERE credits.full_name LIKE 'Committed use discount - dollar based: GCE Commitments%'
OR sku.description LIKE "%GCE for 1 year%"
OR sku.description LIKE "%GCE for 3 year%"`
;

計算彈性 CUD 的整體節省金額

彈性 CUD 的有效節省總額會因特定月份使用的資源,以及這些資源的隨選價格而異。由於彈性 CUD 的節省金額取決於基礎 SKU,因此您看到的折扣費率可能與廣告宣傳的清單折扣不同。請務必計算彈性 CUD 的有效總節省金額,瞭解整體折扣的效益。

如要計算彈性 CUD 的有效總節省金額,請使用下列元件:

  • 以量計價費率 - 您為以量計價 VM 使用量支付的百分比費率。這通常是 1 (代表 100%),但如果帳戶已啟用其他以量計價的 VM 折扣,則可能較低。
  • 彈性 CUD SKU 價格 - 您為彈性 CUD 支付的自訂價格,可在 Google Cloud 控制台的「定價」頁面中查看。 SKU 說明開頭為「承諾 - 以金額為準」
    • 1 年彈性承諾使用合約的承諾費用會顯示為 Commitment - dollar based v1: GCE for 1 year
    • 3 年彈性承諾使用合約的承諾費用會顯示為 Commitment - dollar based v1: GCE for 3 years
  • 彈性 CUD 折扣百分比:相較於標準隨選 VM 用量,彈性 CUD 可額外節省的費用。這通常是 1 年期承諾使用合約的 28% 和 3 年期承諾使用合約的 46%,但可能因帳戶生效的其他節省金額而異。Google Cloud 帳戶團隊可能會提供這項資訊,您也可以使用自訂彈性 CUD SKU 價格來計算。
  • 彈性 CUD 總有效節省金額 - 採用彈性 CUD 後,以隨選費率計算的有效節省金額。

如果您知道彈性 CUD 的增量折扣,請將該值代入下列方程式:

Total Effective Flexible CUDs Savings = 1 - (On-Demand Rate - (On-Demand Rate * Flexible CUDs Discount Percentage))

1 年期和 3 年期方案的結果不同,且不同隨選 VM 的結果可能因隨選費率而異。

如果您不知道這個彈性 CUD 增量百分比,可以前往控制台 Google Cloud 的「價格」頁面,使用「彈性 CUD SKU 價格」計算:

Flexible CUDs Discount Percentage = 1 - (Flexible CUDs SKU Price * 100)

如果您已享有其他以量計價 VM 的折扣,則彈性 CUD 折扣百分比可能會低於標準折扣 (1 年期承諾使用合約為 28%,3 年期承諾使用合約為 46%)。

如要瞭解如何查看及管理已購買的承諾使用合約,請參閱:

計算彈性 CUD 總節省金額的範例

這個範例說明如何計算 3 年彈性承諾方案的總節省金額。

在本例中,彈性 CUD SKU 價格為 $0.0054 美元,以量計價費率為 100%。如要瞭解彈性 CUD 的有效總節省金額,請將彈性 CUD 的 SKU 價格 $0.0054 乘以 100,得出 0.54。接著,從 1 減去 0.54,即可得出彈性 CUD 折扣百分比,在本例中為 0.46 或 46%。最後,將以量計價費率彈性 CUD 折扣百分比輸入「總有效彈性 CUD 節省金額」公式:

Total Effective Flexible CUDs Savings = 1 - (On-Demand Rate - (On-Demand Rate* Flexible CUDs Discount Percentage))

這個範例的完整計算如下:

  1. 彈性 CUD SKU 價格 $0.0054 乘以 100,得出產品價格 $0.54。
  2. 從 1 減去 0.54,即可得出彈性 CUD 折扣百分比為 0.46 或 46%。
  3. 隨選費率代入公式,即可計算彈性 CUD 總有效節省金額

    **Total Effective Flexible CUDs Savings** = 1 - (1 - (1 * .46))

您的彈性 CUD 有效節省總額為 0.46 或 46%。

根據目前用量計算可享折扣

設定 Cloud Billing 匯出功能後,您就能分析過去的使用情形,並計算彈性 CUD 會為這些用量提供多少折扣。計算方式取決於下列參數:

變數/欄位名稱

說明

LOOK_BACK_WINDOW 分析的回溯期 (例如 30 天、90 天)。
credits_from_existing_cuds 已購買的有效承諾使用合約所提供的每小時抵免額。
credits_from_existing_suds 續用折扣 (SUD) 自動提供的每小時抵免額。
cost_eligible_for_additional_flex_cuds_considering_cud_credits 每小時符合資格的未折扣用量,僅排除 CUD 抵免額。
cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits 每小時符合資格的未折扣用量,不含 CUD 和 SUD 抵免額。
min_cost_eligible_for_additional_flex_cuds_considering_cud_credits 最低未折扣用量,僅排除 CUD 抵免額。
min_cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits 最低未折扣用量,不含 CUD 和 SUD 抵免額;根據 look_back_window 的最保守估計。

使用下列查詢,瞭解 CUD 對每小時未折扣用量的影響。

 IMPORTANT:
 YOU MUST REPLACE  `PROJECT.DATASET.TABLE` -- BILLING_BQ_EXPORT_TABLE_NAME
 WITH THE BILLING BigQuery TABLE NAME IN THE QUERIES BELOW.
DECLARE LOOK_BACK_WINDOW INT64 DEFAULT 30;

-- Hourly data for the window.
WITH
 base AS (
 SELECT
   *,
 IF
   (total_cost >= credits_from_existing_cuds,
     (total_cost - credits_from_existing_cuds),
     0) AS cost_eligible_for_additional_flex_cuds_considering_cud_credits,
 IF
   (total_cost >= (credits_from_existing_cuds + credits_from_existing_suds),
     (total_cost - (credits_from_existing_cuds + credits_from_existing_suds)),
     0) AS cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits
 FROM (
   SELECT
     usage_start_time,
     SUM(cost) AS total_cost,
     (SUM((
         SELECT
           SUM(c.amount)
         FROM
           UNNEST(credits) AS c
         WHERE
           c.type IN ( "COMMITTED_USAGE_DISCOUNT",
             "COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE" ))) * -1) AS credits_from_existing_cuds,
     (SUM((
         SELECT
           SUM(c.amount)
         FROM
           UNNEST(credits) AS c
         WHERE
           c.type IN ( "SUSTAINED_USAGE_DISCOUNT" ))) * -1) AS credits_from_existing_suds,
   FROM
     `PROJECT.DATASET.TABLE` -- BILLING_BQ_EXPORT_TABLE_NAME
   WHERE
     1 = 1
     AND DATE(_PARTITIONTIME) >= DATE_ADD(CURRENT_DATE(), INTERVAL -LOOK_BACK_WINDOW DAY)
     AND usage_start_time >= TIMESTAMP(DATE_ADD(CURRENT_DATE(), INTERVAL -LOOK_BACK_WINDOW DAY))
     AND usage_start_time < TIMESTAMP(CURRENT_DATE())
     AND service.description = "Compute Engine"
     AND ( 1 = 0
       OR sku.description LIKE 'C2D AMD Instance Core running in%'
       OR sku.description LIKE 'C2D AMD Instance Ram running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Compute optimized Core running in%'
       OR sku.description LIKE 'Compute optimized Instance Core running in%'
       OR sku.description LIKE 'Compute optimized Instance Ram running in%'
       OR sku.description LIKE 'Compute optimized Ram running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Custom E2 Instance Core running in%'
       OR sku.description LIKE 'Custom E2 Instance Ram running in%'
       OR sku.description LIKE 'Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'Custom Instance Core running in%'
       OR sku.description LIKE 'Custom Instance Ram running in%'
       OR sku.description LIKE 'E2 Instance Core running in%'
       OR sku.description LIKE 'E2 Instance Ram running in%'
       OR sku.description LIKE 'N1 Predefined Instance Core running in%'
       OR sku.description LIKE 'N1 Predefined Instance Ram running in%'
       OR sku.description LIKE 'N2 Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'N2 Custom Instance Core running in%'
       OR sku.description LIKE 'N2 Custom Instance Ram running in%'
       OR sku.description LIKE 'N2 Instance Core running in%'
       OR sku.description LIKE 'N2 Instance Ram running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Extended Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Custom Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'Sole Tenancy Instance Ram running in%' )
   GROUP BY
     usage_start_time ))
SELECT
 *
FROM
 base
ORDER BY
 usage_start_time DESC;

-- Minimum flex eligible on demand spend in the window.
WITH
 base AS (
 SELECT
   *,
 IF
   (total_cost >= credits_from_existing_cuds,
     (total_cost - credits_from_existing_cuds),
     0) AS cost_eligible_for_additional_flex_cuds_considering_cud_credits,
 IF
   (total_cost >= (credits_from_existing_cuds + credits_from_existing_suds),
     (total_cost - (credits_from_existing_cuds + credits_from_existing_suds)),
     0) AS cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits
 FROM (
   SELECT
     usage_start_time,
     SUM(cost) AS total_cost,
     (SUM((
         SELECT
           SUM(c.amount)
         FROM
           UNNEST(credits) AS c
         WHERE
           c.type IN ( "COMMITTED_USAGE_DISCOUNT",
             "COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE" ))) * -1) AS credits_from_existing_cuds,
     (SUM((
         SELECT
           SUM(c.amount)
         FROM
           UNNEST(credits) AS c
         WHERE
           c.type IN ( "SUSTAINED_USAGE_DISCOUNT" ))) * -1) AS credits_from_existing_suds,
   FROM
     `PROJECT.DATASET.TABLE` -- BILLING_BQ_EXPORT_TABLE_NAME
   WHERE
     1 = 1
     AND DATE(_PARTITIONTIME) >= DATE_ADD(CURRENT_DATE(), INTERVAL -LOOK_BACK_WINDOW DAY)
     AND usage_start_time >= TIMESTAMP(DATE_ADD(CURRENT_DATE(), INTERVAL -LOOK_BACK_WINDOW DAY))
     AND usage_start_time < TIMESTAMP(CURRENT_DATE())
     AND service.description = "Compute Engine"
     AND ( 1 = 0
       OR sku.description LIKE 'C2D AMD Instance Core running in%'
       OR sku.description LIKE 'C2D AMD Instance Ram running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'C2D AMD Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Compute optimized Core running in%'
       OR sku.description LIKE 'Compute optimized Instance Core running in%'
       OR sku.description LIKE 'Compute optimized Instance Ram running in%'
       OR sku.description LIKE 'Compute optimized Ram running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'Compute-optimized Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Custom E2 Instance Core running in%'
       OR sku.description LIKE 'Custom E2 Instance Ram running in%'
       OR sku.description LIKE 'Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'Custom Instance Core running in%'
       OR sku.description LIKE 'Custom Instance Ram running in%'
       OR sku.description LIKE 'E2 Instance Core running in%'
       OR sku.description LIKE 'E2 Instance Ram running in%'
       OR sku.description LIKE 'N1 Predefined Instance Core running in%'
       OR sku.description LIKE 'N1 Predefined Instance Ram running in%'
       OR sku.description LIKE 'N2 Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'N2 Custom Instance Core running in%'
       OR sku.description LIKE 'N2 Custom Instance Ram running in%'
       OR sku.description LIKE 'N2 Instance Core running in%'
       OR sku.description LIKE 'N2 Instance Ram running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'N2 Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Extended Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Extended Ram running in%'
       OR sku.description LIKE 'N2D AMD Custom Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Custom Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Instance Ram running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'N2D AMD Sole Tenancy Instance Ram running in%'
       OR sku.description LIKE 'Sole Tenancy Instance Core running in%'
       OR sku.description LIKE 'Sole Tenancy Instance RAM running in%'
       OR sku.description LIKE 'Sole Tenancy Instance Ram running in%' )
   GROUP BY
     usage_start_time ))
 SELECT
   MIN (cost_eligible_for_additional_flex_cuds_considering_cud_credits) AS
   min_cost_eligible_for_additional_flex_cuds_considering_cud_credits,
    MIN (cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits) AS
    min_cost_eligible_for_additional_flex_cuds_considering_cud_and_sud_credits FROM
   base;

支援

如果您對帳單上的 CUD 有任何疑問,請聯絡 Cloud 帳單支援團隊尋求協助。