定價

BigQuery 定價總覽

BigQuery 是一個無伺服器資料分析平台,您不需要佈建個別執行個體或虛擬機器,就能使用 BigQuery。反之,BigQuery 會自動視需求分配運算資源。另外,您也可以提前保留運算容量 (顯示為代表了虛擬 CPU 的「運算單元」)。BigQuery 的定價結構反映了這項設計。

BigQuery 的計價方式分為兩個主要部分:

  • 分析定價是處理查詢的費用,當中包含可掃描資料表的 SQL 查詢、使用者定義函式、指令碼、特定資料操縱語言 (DML) 和資料定義語言 (DDL) 陳述式。

  • 儲存定價是儲存已載入 BigQuery 的資料的費用。

BigQuery 會針對其他幾項作業收費,包括串流資料插入和使用 BigQuery Storage API。詳情請參閱資料擷取定價資料提取定價

此外,BigQuery 也提供免費作業免費用量級別

您建立的每項專案都會連結至一個帳單帳戶,在專案中執行 BigQuery 工作而產生的所有費用都會計入該帳單帳戶。此外,BigQuery 儲存空間的相關費用也會計入與專案相連結的帳單帳戶中。您可以在 Cloud Console 的「Cloud Billing」報表頁面中查看 BigQuery 的費用和趨勢。

分析定價模式

BigQuery 提供兩個執行查詢計費模式:

  • 以量計價採用這個定價模式時,系統會根據各項查詢處理作業的位元組數向您收費。每個月處理的前 1 TB 查詢資料為免費。

  • 固定費率採用這個計價模式時,您必須購買運算單元,也就是虛擬 CPU。購買運算單元時,您必須購買可用於執行查詢的專用處理容量。運算單元的使用承諾方案如下:

    • 彈性運算單元:承諾至少使用 60 秒。
    • 月付方案:承諾至少使用 30 天。
    • 年約方案:承諾至少使用 365 天。

    採用月付方案或年約方案時,您承諾使用的時間較長,因此可以享有較低的價格。

您可以視需求結合這兩個模式。採用以量計價模式時,您用多少就付多少。不過,您的查詢會使用共用的運算單元集區,因此效能可能不同。採用固定費率模式時,您會購買定額的容量並承諾使用較長時間,因此可以享有折扣。如要進一步瞭解自己適合選用何種工作負載定價模式,請參閱使用保留項目進行工作負載管理

以量計價的分析定價

根據預設,查詢會按照以量計價的定價模式計費。

在以量計價模式中,BigQuery 會按照實際處理的位元組數 (也稱為「實際讀取的位元組數」) 收取費用。無論資料是儲存在 BigQuery,或是 Cloud Storage、雲端硬碟或 Cloud Bigtable 等外部資料來源,您都必須按照系統實際處理的位元組數支付費用。費用完全取決於用量。

以量計價模式的查詢價格如下:

偏好每個月支付固定費用的高用量客戶也可以選擇固定費率計價方式

定價詳細資料

請留意下列以量計價查詢的費用:

  • BigQuery 採用資料欄式資料結構。系統會根據您所選資料欄中處理的資料總量向您收費,每個資料欄中的資料總量則是按照資料欄中資料的類型計算。如要進一步瞭解資料量的計算方式,請參閱資料量的計算方式一節。
  • 如果查詢作業傳回錯誤訊息或是從快取中擷取結果,則您不必付費。 以指令碼工作來說,系統會在個別陳述式層級採用這個計價模式。
  • 資料量會四捨五入至最接近的 MB 數。針對查詢所參照的每個資料表,系統處理的資料量基本額度為 10 MB,每項查詢作業處理的資料量基本額度也同樣是 10 MB。
  • 即便您取消正在執行的查詢工作,該項作業還是可能產生費用,且價格最高等同於完整執行作業須支付的全額費用。
  • 當您執行查詢時,系統會根據您所選資料欄中處理的資料量向您收費,即使您已明確對結果設定 LIMIT 也是如此。
  • 將資料表分區分群有助於降低查詢處理的資料量。為達到最佳做法的成效,請盡可能採用分區和分群的做法。
  • 以量計價的查詢價格是指 Google Cloud SKU 頁面上所列的分析價格。
  • 如果您對叢集資料表執行查詢,而且查詢含有叢集資料欄篩選器,則 BigQuery 會使用篩選器運算式來修剪查詢掃描的區塊。這麼做可以減少掃描的位元組數。
  • 從 BigQuery 查詢外部資料來源時,系統會針對查詢讀取的位元組數向您收費。如果外部資料是儲存在其他 Google Cloud 產品 (例如 Cloud Storage) 中,您也必須支付該項產品的儲存費用。詳情請參閱 Google Cloud 定價

BigQuery 提供成本管理功能,可讓您將查詢的成本控制在一定額度內。您可以設定下列項目:

如需實際處理的位元組數計算方式詳細示例,請參閱查詢大小計算一節。

固定費率計價模式

想要支付固定查詢作業費用的客戶可以選用 BigQuery 的固定費率計價方式,而不必根據系統實際處理的資料量 (以 TB 為單位) 付費。

如要啟用固定費率計價模式,請使用 BigQuery 保留項目

註冊固定費率計價方案時,您購買的查詢處理作業專用容量是以 BigQuery 運算單元為計算單位。您執行的查詢作業會耗用這個容量,而不需要為系統處理的位元組數支付費用。如果您的容量需求超過承諾使用容量,BigQuery 會將運算單元排入佇列,因此您不必支付額外費用。如要進一步瞭解 BigQuery 如何利用運算單元處理查詢,請參閱運算單元一文。

固定費率計價模式:

  • 適用於查詢費用,包括 BigQuery ML、DML 和 DDL 陳述式。
  • 不適用於儲存空間費用或 BI Engine 費用。
  • 僅可做為區域性資源購買。在某個區域或多區域購買的運算單元使用承諾,無法用於其他區域或多區域,且無法移動。
  • 客戶可聯絡 Google Cloud 支援團隊來提高每項專案的並行配額。
  • 提供按秒方案、月約方案和年約方案。
  • 可由整個機構共用,不須為每項專案購買運算單元承諾使用價格
  • 運算單元數量至少為 100 個,且以 100 個運算單元為遞增量購買。
  • 系統在承諾使用價格期間會以秒計費。

每月固定費率的使用承諾

下表列出了運算單元每月使用承諾的方案費用,詳情請參閱月約方案

每年固定費率的使用承諾

下表列出了運算單元每年使用承諾的方案費用,詳情請參閱年約方案

彈性運算單元:短期使用承諾

彈性運算單元是一種特別的使用承諾類型:

  • 承諾使用時間長度僅為 60 秒。
  • 之後您隨時都可以取消彈性運算單元,
  • 系統只會針對您的使用承諾部署秒數向您收費。

彈性運算單元取決於運算能力可用性,當您嘗試購買彈性運算單元時,我們不保證能成功購買。不過,在您成功購買使用承諾之後,系統就會保證提供足夠的運算能力,直到您取消為止。詳情請參閱彈性運算單元

下表列出彈性運算單元使用承諾的費用。

儲存定價

儲存定價是儲存已載入 BigQuery 的資料的費用。您只需要為「動態儲存」和「長期儲存」付費。

  • 動態儲存包含過去 90 天內修改過的任何資料表或資料表分區。

  • 長期儲存包含任何連續 90 天未經修改的資料表或資料表分區。這類資料表的儲存費用會自動調降約 50%。動態儲存與長期儲存的效能、耐用性或可用性沒有任何差異。

每個月前 10 GB 儲存空間為免費。

定價詳細資料

系統會根據資料表中儲存的資料量 (在未經壓縮的狀態下) 計算儲存空間費用。資料量是以個別資料欄中的資料類型為計算依據。如要深入瞭解資料量的計算方式,請參閱資料量的計算方式一節。

儲存空間價格是以每秒每 MB 按比例計算。以下舉例說明儲存空間的使用方式和您必須支付的費用:

  • 半個月 100 MB,您必須支付 $0.001 美元 (十分之一美分)
  • 半個月 500 GB,您必須支付 $5 美元
  • 一個月 1 TB,您必須支付 $20 美元

儲存空間用量的計算單位是 GB,而 1 GB 等於 230 個位元組,這種計算單位又稱為 GiB。同理,1 TB 為 240 個位元組 (1,024 GB)。

如果資料表連續 90 天未經編輯,則會按照長期儲存費率計費。資料表經系統歸類至長期儲存模式後,效能、耐用性和可用性都不會下降,其他功能也不會受損,因此請您放心。

在判斷特定資料是否適用長期儲存價格時,系統會將分區資料表中的每個分區視為獨立的單位。如果某個資料表分區在過去 90 天內未經修改,該分區中的資料使用方式就會被歸類為長期儲存,並以折扣價格計費。

資料表經過編輯之後,就會恢復為標準儲存價格,先前累計的 90 天閒置期也會歸零並重新開始計算。任何修改資料表的動作都會讓計時器歸零,包括:

動作 說明
將資料載入至資料表 將資料附加至目的地資料表或覆寫目的地資料表的任何載入或查詢作業。
將資料複製到資料表 將資料附加至目的地資料表或覆寫目的地資料表的任何複製作業。
將查詢結果寫入資料表 將資料附加至目的地資料表或覆寫目的地資料表的任何查詢作業。
使用資料操縱語言 (DML) 使用 DML 陳述式修改資料表中的資料。
使用資料定義語言 (DDL) 使用 CREATE OR REPLACE TABLE 陳述式來替換資料表。
將資料串流至資料表 使用 tabledata.insertAll API 呼叫來擷取資料。

其他作業均不會重設計時器,這些作業包括:

  • 查詢資料表
  • 建立可查詢資料表的檢視表
  • 從資料表匯出資料
  • 將資料表複製到另一個目的地資料表
  • 修補或更新資料表資源

如果資料表在單一帳單週期內達到 90 天的門檻,其儲存空間價格就會按比例計算。

長期儲存價格只適用於 BigQuery 儲存空間,並不適用於 Cloud Bigtable、Cloud Storage 和雲端硬碟等外部資料來源中儲存的資料。

資料量的計算方式

在您查詢資料或將資料載入至 BigQuery 時,系統會依據該筆資料的大小向您收取費用,資料量的計算方式則視各欄的資料類型大小而定。

您儲存的資料大小與您的查詢作業處理的資料量計算單位為 GB,而 1 GB 等於 230 個位元組,這種計算單位又稱為 GiB。同理,1 TB 為 240 個位元組 (1,024 GB)。

BigQuery 各資料類型的大小資訊如下:

資料類型 大小
INT64/INTEGER 8 個位元組
FLOAT64/FLOAT 8 個位元組
NUMERIC 16 個位元組
BIGNUMERIC 32 個位元組
BOOL/BOOLEAN 1 位元組
STRING 2 個位元組 + UTF-8 編碼的字串大小
BYTES 2 個位元組 + 值中的位元組數
DATE 8 個位元組
DATETIME 8 個位元組
TIME 8 個位元組
TIMESTAMP 8 個位元組
STRUCT/RECORD 0 個位元組 + 所含欄位的大小
GEOGRAPHY 16 個位元組 + 24 個位元組 * 地理位置類型中的端點數。您可以使用 ST_NumPoints 函式來確認端點數量。

所有資料類型的空值皆以 0 個位元組計算。

重複欄會以陣列的形式儲存,其資料量大小的計算依據為值的數量。舉例來說,重複 (ARRAY<INT64>) 且包含 4 個項目的整數資料欄 (INT64) 會計為 32 個位元組 (4 個項目 x 8 個位元組)。

資料擷取定價

BigQuery 提供兩個資料擷取模式:

  • 批次載入。在一項批次作業中將來源資料載入一或多個 BigQuery 資料表。

  • 串流。一次傳送一項記錄,或是透過小型批次作業串流資料。

如要進一步瞭解自己適合選用何種模式,請參閱載入資料簡介

定價詳細資料

根據預設,以批次作業方式將 Cloud Storage 或本機檔案中的資料載入 BigQuery 不會產生費用,而且載入工作會使用共用的運算單元集區。BigQuery 不保證這個共用集區的可用容量或實際的總處理量。或者,您也可以購買專屬運算單元來執行載入工作。您必須按照固定費率支付專屬運算單元的費用。載入工作指派給保留項目之後,就無法再使用免費集區。詳情請參閱指派一節。

資料載入 BigQuery 之後,您必須按照 BigQuery 的儲存空間定價支付費用。如果您是從 Cloud Storage 載入資料,則在 Cloud Storage 中儲存資料須付費。詳情請參閱 Cloud Storage 定價頁面中的資料儲存部分。

如果目標資料集位於 US 多區域,從其他區域的 Cloud Storage 值區載入資料皆不會產生網路輸出費用。詳情請參閱位置注意事項

資料提取定價

BigQuery 提供兩個資料提取模式:

  • 批次匯出。將資料表資料匯出至 Cloud Storage。

  • 串流讀取。使用 BigQuery Storage API 串流讀取資料表資料。

定價詳細資料

匯出資料

根據預設,從 BigQuery 匯出資料不會產生費用,而且匯出工作會使用共用的運算單元集區。BigQuery 不保證這個共用集區的可用容量或實際的總處理量。或者,您也可以購買專屬運算單元來執行匯出工作。您必須按照固定費率支付專屬運算單元的費用。匯出工作指派給保留項目之後,就無法再使用免費集區。詳情請參閱指派一節。

BigQuery Storage API 定價

BigQuery Storage API 採以量計價的收費模式,會根據您讀取的資料量向您收費。採用固定費率方案的客戶每月最多可以透過 BigQuery Storage API 免費讀取每個帳單帳戶 300 TB 的資料量。如果每月讀取的資料量超過 300 TB,系統會按照以量計價的方式收費。

在以量計價模式中,BigQuery Storage API 的費用取決於向 ReadRows 發出的呼叫在 BigQuery 儲存空間中讀取的位元組數。

讀取的位元組數包含用於篩選但未以輸出內容形式傳回給您的 ReadRows 資料。透過臨時資料表讀取的資料不會計費。

請留意下列 BigQuery Storage API 費用相關事項:

  • 系統會依據讀取的資料總量向您收費。每個資料欄的讀取資料總量取決於資料欄的資料類型,而資料量是以資料欄的資料類型為計算依據。如要深入瞭解資料量的計算方式,請參閱資料量的計算方式一節。
  • 即使 ReadRows 呼叫失敗,系統仍會根據您在讀取工作階段中讀取的資料量收費。
  • 如果您在串流結束前就先行取消 ReadRows 呼叫,系統會根據取消前已讀取的資料量向您收費。取消 ReadRows 呼叫前已讀取但未傳回給您的資料仍須付費。
  • 為達到最佳做法的成效,請盡可能採用分區資料表和叢集資料表。您可以使用 WHERE 子句修剪分區,藉此減少讀取的資料量。詳情請參閱查詢分區資料表一節。
  • BigQuery Storage API 並未包含在 Google Cloud 免費方案中。

免費作業項目

下列 BigQuery 作業在每個位置均為免費,這些作業適用配額與限制

作業 說明
載入資料 可免費使用共用運算單元集區。客戶可以選用固定費率方案來確保容量充足。將資料載入 BigQuery 之後,您必須支付儲存空間的相關費用。詳情請參閱資料擷取定價
複製資料 複製資料表不必付費,但儲存新的資料表和您所複製的資料表必須付費。詳情請參閱複製現有資料表的相關說明。
匯出資料 使用共用運算單元集區無須支付費用,但將資料儲存於 Cloud Storage 則須付費。詳情請參閱匯出資料
刪除資料集 刪除資料集不必付費。
刪除資料表、檢視表、分區和函式 刪除資料表、檢視表、個別資料表分區或使用者定義函式都不必付費。
中繼資料作業 您不必支付 list、get、patch、update 和 delete 的呼叫費用,其中包含但不限於以下項目:列出資料集、更新資料集的存取控制清單、更新資料表的說明,或是列出資料集內的使用者定義函式。
讀取虛擬資料欄 您可以免費查詢下列虛擬資料欄的內容:

_TABLE_SUFFIX
_PARTITIONDATE
_PARTITIONTIME
_FILE_NAME
讀取中繼資料表 您可以免費查詢下列中繼資料表的內容:

__PARTITIONS_SUMMARY__
__TABLES_SUMMARY__
使用者定義的函式 (UDF) 建立、替換或叫用永久 UDF 無須付費。

免費使用方案

Google Cloud 免費方案可讓使用者免費使用部分 BigQuery 資源,直到達到相關的配額上限為止。在免費試用期間或試用期結束後,只要用量未超出限制,即可免費使用特定資源。免費試用期結束後,如果用量超出限制,系統就會根據本頁列出的價格向您收費。

資源 每月免費用量限制 說明
儲存空間 每個月的前 10 GB 免費。 BigQuery ML 模型和儲存在 BigQuery 中的訓練資料均包含在 BigQuery 儲存空間的免費方案中。
查詢 (分析) 每個月處理的前 1 TB 查詢資料免費。 使用 BigQuery ML 預測、檢查及評估函式的查詢包含在 BigQuery 分析的免費方案中,但內含 CREATE MODEL 陳述式的 BigQuery ML 查詢除外。
偏好每個月支付固定費用的高用量客戶,也可選擇 BigQuery 固定費率計價方式
BigQuery ML CREATE MODEL 查詢 包含 CREATE MODEL 陳述式的查詢每個月可以免費處理前 10 GB 的資料。 BigQuery 分析的免費方案不含 BigQuery ML CREATE MODEL 查詢,且只適用於 BigQuery ML 內建的模型 (在 BigQuery 中訓練的模型)。

後續步驟