建立自訂的費用控管機制

如果您同時擁有多個 BigQuery 專案和使用者,可以提出自訂配額要求並指定每日處理的查詢資料量上限,藉此達到管控成本的目的。

為查詢資料量建立自訂配額之後,您就能掌控專案層級或使用者層級的費用。

  • 專案層級的自訂配額會限制一項專案中所有使用者的匯總用量。

  • 使用者層級的自訂配額會分別套用至一項專案中的每個使用者或服務帳戶

如想瞭解現行的以量計價查詢計費模式,請參閱定價頁面

如何設定或修改自訂配額

如要設定自訂配額或修改現有自訂配額,請使用 Google Cloud Platform 主控台頁面。配額變更應會在幾分鐘內生效。

您必須具備 serviceusage.quotas.update 權限,才能變更配額。serviceusage.quotas.update 權限包含在以下預先定義的專案層級 IAM 角色中:

自訂配額機制的執行方式

設定自訂配額之後,如果您超過該上限,BigQuery 就會傳回錯誤訊息。

如果您超過專案層級的自訂配額,BigQuery 會傳回下列 usageQuotaExceeded 錯誤訊息:

Custom quota exceeded: Your usage exceeded the custom quota for
QueryUsagePerDay, which is set by your administrator. For more information,
see https://cloud.google.com/bigquery/cost-controls

如有使用者超過使用者層級的自訂配額,BigQuery 同樣會傳回 usageQuotaExceeded 錯誤,但錯誤訊息的內容不同:

Custom quota exceeded: Your usage exceeded the custom quota for
QueryUsagePerUserPerDay, which is set by your administrator. For more information,
see https://cloud.google.com/bigquery/cost-controls

如果您在查詢作業中使用 _PARTITIONTIME_TABLE_SUFFIX 篩選器,可能會收到非預期的 quotaExceeded 錯誤。這是因為 BigQuery 在評估您的查詢作業是否可能超過自訂配額時,會完全忽略查詢中的 _PARTITIONTIME_TABLE_SUFFIX 篩選器。

範例

假設您已為包含 10 名使用者的專案設定下列自訂配額,且其中一名使用者為服務帳戶:

  • 專案層級:每日 50 TB
  • 使用者層級:每日 10 TB

下表說明 10 名使用者在單日內執行完所需查詢後的剩餘配額。

用量 剩餘配額
10 名使用者的查詢量各為 4 TB 專案層級:剩餘 10 TB。
使用者層級:每名使用者各剩餘 6 TB,但總計最多只能再使用 10 TB。
服務帳戶使用了另外的 6 TB 查詢量 專案層級:剩餘 4 TB。
使用者層級:服務帳戶無法繼續使用 BigQuery。其他使用者各剩餘 6 TB,但總計最多只能再使用 4 TB。
1 名使用者使用了另外的 4 TB 查詢量 專案層級:剩餘 0 TB。
使用者層級:每名使用者剩餘的 TB 數各不相同。不過由於已超出專案層級的配額上限,因此所有使用者均不得使用 BigQuery。

由於剩餘配額為 0,因此該項專案中的每名使用者都無法繼續使用 BigQuery。

常見問題

客戶可以自行設定自訂配額嗎?

可以,您可以在 Google Cloud Platform 主控台頁面中自行設定配額。

如何知道自己的自訂配額層級屬於何者?

您可以在 Google Cloud Platform 主控台頁面上查看配額層級資訊。

自訂配額何時會補充?

系統會在太平洋時間凌晨 12 點重設每日配額。

如果想要重設自訂配額,卻已超過所設上限,該怎麼辦?

您可以透過其他專案執行查詢作業,不過前提是該項專案可存取您的資料集,並且沒有設定自訂配額或尚未超過配額上限。

自訂配額屬於主動或被動機制?換句話說,如果所設配額為 10 TB,是否可以執行 11 TB 的查詢量?

自訂配額會主動發揮作用,因此如果配額為 10 TB,您就無法執行資料量為 11 TB 的查詢作業。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁