BigQuery 定價
BigQuery 是一個無伺服器資料分析平台,您不需要佈建個別執行個體或虛擬機器,就能使用 BigQuery。反之,BigQuery 會自動視需求分配運算資源。另外,您也可以提前保留運算容量 (顯示為代表了虛擬 CPU 的「運算單元」)。BigQuery 的定價結構反映了這項設計。
BigQuery 定價總覽
BigQuery 的計價方式分為兩個主要部分:
分析定價是處理查詢的費用,當中包含可掃描資料表的 SQL 查詢、使用者定義函式、指令碼、特定資料操縱語言 (DML) 和資料定義語言 (DDL) 陳述式。
儲存定價是儲存已載入 BigQuery 的資料的費用。
BigQuery 會針對其他幾項作業收費,包括串流資料插入和使用 BigQuery Storage API。詳情請參閱資料擷取定價和資料提取定價。
您建立的每項專案都會連結至一個帳單帳戶,在專案中執行 BigQuery 工作而產生的所有費用都會計入該帳單帳戶。此外,BigQuery 儲存空間的相關費用也會計入與專案相連結的帳單帳戶中。您可以在 Cloud Console 的「Cloud Billing」報表頁面中查看 BigQuery 的費用和趨勢。
分析定價模式
BigQuery 提供兩個執行查詢計費模式:
以量計價採用這個定價模式時,系統會根據各項查詢處理作業的位元組數向您收費。每個月處理的前 1 TB 查詢資料為免費。
固定費率採用這個計價模式時,您必須購買運算單元,也就是虛擬 CPU。購買運算單元時,您必須購買可用於執行查詢的專用處理容量。運算單元的使用承諾方案如下:
- 彈性運算單元:承諾至少使用 60 秒。
- 月付方案:承諾至少使用 30 天。
- 年約方案:承諾至少使用 365 天。
採用月付方案或年約方案時,您承諾使用的時間較長,因此可以享有較低的價格。
您可以視需求結合這兩個模式。採用以量計價模式時,您用多少就付多少。不過,您的查詢會使用共用的運算單元集區,因此效能可能不同。採用固定費率模式時,您會購買定額的容量並承諾使用較長時間,因此可以享有折扣。如要進一步瞭解自己適合選用何種工作負載定價模式,請參閱使用保留項目進行工作負載管理。
以量計價的分析定價
根據預設,系統會使用以量計價的模式計費,您只需為查詢所掃描過的資料付費。
透過以量計價的方式,您最多可以存取 2,000 個並行運算單元,這些資源會由單一專案中的所有查詢共用。BigQuery 會定期暫時性提高這個上限,藉此加速較小的查詢項目。此外,如果在特定位置對隨選容量有大量爭用,則可用運算單元數量有時可能會較少。
以量計價模式的查詢價格如下:
如果使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格計費。
偏好每個月支付固定費用的高用量客戶也可以選擇固定費率計價方式。
定價詳細資料
請留意下列以量計價查詢的費用:
- 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 費用。
- 不適用於串流資料插入和 BigQuery Storage API。
- 僅可做為地區性資源購買。在某個區域或多區域購買的運算單元使用承諾,無法用於其他區域或多區域,且無法移動。
- 客戶可聯絡 Google Cloud 支援團隊來提高每項專案的並行配額。
- 提供按秒方案、月約方案和年約方案。
- 可由整個機構共用,不須為每項專案購買運算單元承諾使用價格。
- 運算單元數量至少為 100 個,且以 100 個運算單元為遞增量購買。
- 系統會按秒向您收費,直到您取消承諾使用為止 (在承諾使用結束日期之後可隨時取消)。
每月固定費率的使用承諾
下表列出了運算單元每月使用承諾的方案費用,詳情請參閱月約方案。
如果使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格計費。
*在限定期間內,我們不會向 Azure-US-East 的 BigQuery Omni 客戶收費。我們會通知您這項計費異動的相關事宜。
每年固定費率的使用承諾
下表列出了運算單元每年使用承諾的方案費用,詳情請參閱年約方案。
如果使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格計費。
*在限定期間內,我們不會向 Azure-US-East 的 BigQuery Omni 客戶收費。我們會通知您這項計費異動的相關事宜。
彈性運算單元:短期承諾使用價格
彈性運算單元是一種特別的使用承諾類型:
- 承諾使用時間長度僅為 60 秒。
- 之後您隨時都可以取消彈性運算單元,
- 系統只會針對您的使用承諾部署秒數向您收費。
彈性運算單元取決於運算能力可用性,當您嘗試購買彈性運算單元時,我們不保證能成功購買。不過,在您成功購買使用承諾之後,系統就會保證提供足夠的運算能力,直到您取消為止。詳情請參閱彈性運算單元。
下表列出彈性運算單元使用承諾的費用。
如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的對應貨幣價格計費。
BigQuery Omni 定價
BigQuery Omni 目前提供固定費率的計價方式,可讓您預估查詢的費用。如要啟用固定費率計價模式,請使用 BigQuery 保留項目。
為 BigQuery Omni 註冊固定費率的計價模式後,您就會在 Amazon Web Services 或 Microsoft Azure 中購買專屬的查詢處理作業專用資料量 (以運算單元為計算單位)。您的查詢作業會耗用前述的資料量,系統不會依據處理的位元組數向您收費。
固定費率:
- 適用於查詢費用,不適用於儲存空間費用。
- 已為單一多雲端區域購買運算單元使用承諾。在某區域中購買的運算單元無法用於其他區域。
- 提供月約方案和年約方案。系統會按秒向您收費,直到您取消使用承諾為止 (在使用承諾結束日期之後可隨時取消)。
- 可由整個機構共用,不須為每項專案購買運算單元使用承諾。
- 運算單元數量至少為 100 個,且以 100 個運算單元為遞增量購買。
每月固定費率的使用承諾
下表列出了運算單元每月使用承諾的方案費用,詳情請參閱月約方案。
每年固定費率的使用承諾
下表列出了運算單元每年使用承諾的方案費用,詳情請參閱年約方案。
彈性運算單元:短期承諾使用價格
彈性運算單元是一種特別的使用承諾類型:
- 承諾使用時間長度僅為 60 秒。
- 之後您隨時都可以取消彈性運算單元,
- 系統只會針對您的使用承諾部署秒數向您收費。
BigQuery Omni 中的彈性運算單元取決於 AWS 或 Azure 的運算能力可用性。當您嘗試購買彈性運算單元時,我們不保證能成功購買。不過,在您成功購買使用承諾之後,系統就會保證提供足夠的運算能力,直到您取消為止。詳情請參閱彈性運算單元。
下表列出彈性運算單元使用承諾的費用。
儲存空間定價
儲存定價是儲存已載入 BigQuery 的資料的費用。您只需要為「動態儲存」和「長期儲存」付費。
動態儲存包含過去 90 天內修改過的任何資料表或資料表分區。
長期儲存包含任何連續 90 天未經修改的資料表或資料表分區。這類資料表的儲存費用會自動調降約 50%。動態儲存與長期儲存的效能、耐用性或可用性沒有任何差異。
每個月前 10 GB 儲存空間為免費。
如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的對應貨幣價格計費。
定價詳細資料
系統會根據資料表中儲存的資料量 (在未經壓縮的狀態下) 計算儲存空間費用。資料量是以個別資料欄中的資料類型為計算依據。如要深入瞭解資料量的計算方式,請參閱資料量的計算方式一節。
儲存空間價格是以每秒每 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 個位元組 |
INTERVAL |
16 個位元組 |
STRUCT/RECORD |
0 個位元組 + 所含欄位的大小 |
GEOGRAPHY |
16 個位元組 + 24 個位元組 * 地理位置類型中的端點數。您可以使用 ST_NumPoints 函式來確認端點數量。 |
所有資料類型的空值皆以 0 個位元組計算。
重複欄會以陣列的形式儲存,其資料量大小的計算依據為值的數量。舉例來說,重複 (ARRAY<INT64>
) 且包含 4 個項目的整數資料欄 (INT64
) 會計為 32 個位元組 (4 個項目 x 8 個位元組)。
資料擷取定價
BigQuery 提供兩個資料擷取模式:
批次載入。在一項批次作業中將來源資料載入一或多個 BigQuery 資料表。
串流。一次傳送一項記錄,或是透過小型批次作業串流資料。
如要進一步瞭解自己適合選用何種模式,請參閱載入資料簡介。
如果使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格計費。
定價詳細資料
根據預設,以批次作業方式將 Cloud Storage 或本機檔案中的資料載入 BigQuery 不會產生費用,而且載入工作會使用共用的運算單元集區。BigQuery 不保證這個共用集區的可用容量或實際的總處理量。或者,您也可以購買專屬運算單元來執行載入工作。您必須按照固定費率支付專屬運算單元的費用。載入工作指派給保留項目之後,就無法再使用免費集區。詳情請參閱指派一節。
資料載入 BigQuery 之後,您必須按照 BigQuery 的儲存空間定價支付費用。如果您是從 Cloud Storage 載入資料,則在 Cloud Storage 中儲存資料須付費。詳情請參閱 Cloud Storage 定價頁面中的資料儲存部分。
如果目標資料集位於 US
多區域,從其他區域的 Cloud Storage 值區載入資料皆不會產生網路輸出費用。詳情請參閱位置注意事項。
資料提取定價
BigQuery 提供兩個資料提取模式:
批次匯出。將資料表資料匯出至 Cloud Storage。
串流讀取。使用 Storage Read API 執行資料表資料的串流讀取作業。
如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的對應貨幣價格計費。
Google Cloud 中的 BigQuery Storage Read API 網路輸出
情境 | 示例 | 費率 |
---|---|---|
從臨時資料表存取查詢結果 |
|
免費 |
資料在同一個位置中讀取 |
|
免費 |
從 BigQuery 多區域讀取至不同 BigQuery 位置的資料,且兩個位置位於同一洲。 |
|
免費 |
在同一洲的不同位置間讀取資料 (假設上述免費情境均不適用) |
|
每 GB $0.01 美元* |
在 Google Cloud 和澳洲以外的不同洲之間移動資料。 |
|
每 GB $0.08 美元 |
在 Google Cloud 和不同洲 (其中之一為澳洲) 之間移動資料。 |
|
每 GB $0.15 美元 |
如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的對應貨幣價格計費。
BigQuery Storage Read API 一般網路用量
每月用量 |
輸出至世界各地 (不包括亞洲和澳洲) (每 GB) |
輸出至亞洲地區 (中國除外,但含香港) (每 GB) |
輸出至中國地區 (香港除外) (每 GB) |
輸出至澳洲地區 (每 GB) |
輸入作業 |
---|---|---|---|---|---|
0 至 1 TB | $0.12 美元 | $0.12 美元 | $0.19 美元 | $0.19 美元 | 免費 |
1 至 10 TB | $0.11 美元 | $0.11 美元 | $0.18 美元 | $0.18 美元 | 免費 |
10 TB 以上 | $0.08 美元 | $0.08 美元 | $0.15 美元 | $0.15 美元 | 免費 |
如果使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格計費。
定價詳細資料
匯出資料
根據預設,從 BigQuery 匯出資料不會產生費用,而且匯出工作會使用共用的運算單元集區。BigQuery 不保證這個共用集區的可用容量或實際的總處理量。或者,您也可以購買專屬運算單元來執行匯出工作。您必須按照固定費率支付專屬運算單元的費用。匯出工作指派給保留項目之後,就無法再使用免費集區。詳情請參閱指派一節。
Storage Read API 定價
Storage Read API 採以量計價的收費模式,在以量計價模式中,BigQuery 會按照實際處理的位元組數 (也稱為「實際讀取的位元組數」) 收取費用。以量計價模式完全取決於用量,每個帳單帳戶每月可讀取 300 TB 的位元組數,無須支付費用。在讀取臨時資料表過程中所掃描的位元組數免費,不會計入 300 TB 的免費方案。讀取 300 TB 的免費位元組數是以讀取位元組數元件為基礎,不適用於相關輸出。
關於 Storage Read API 費用的注意事項如下:
- 系統會依據讀取的資料總量向您收費。每個資料欄的讀取資料總量取決於資料欄的資料類型,而資料量是以資料欄的資料類型為計算依據。如要深入瞭解資料量的計算方式,請參閱資料量的計算方式一節。
- 即使
ReadRows
呼叫失敗,系統仍會根據您在讀取工作階段中讀取的資料量收費。 - 如果您在串流結束前就先行取消
ReadRows
呼叫,系統會根據取消前已讀取的資料量向您收費。取消ReadRows
呼叫前已讀取但未傳回給您的資料仍須付費。 - 為達到最佳做法的成效,請盡可能採用分區資料表和叢集資料表。您可以使用
WHERE
子句修剪分區,藉此減少讀取的資料量。詳情請參閱查詢分區資料表一節。
免費作業項目
下列 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 分析的免費方案中,但內含 偏好每個月支付固定費用的高用量客戶也可以選擇 BigQuery 的固定費率計價方式。 |
BigQuery ML CREATE MODEL 查詢 |
包含 CREATE MODEL 陳述式的查詢每個月可以免費處理前 10 GB 的資料。 |
BigQuery 分析的免費方案不含 BigQuery ML CREATE MODEL 查詢,且只適用於 BigQuery ML 內建的模型 (在 BigQuery 中訓練的模型)。 |
後續步驟
如要瞭解如何透過報表解讀自己的帳單資料,請參閱查看帳單報表和支出趨勢一文。
如要瞭解如何透過 BigQuery 分析帳單資料,請參閱將 Cloud Billing 資料匯出至 BigQuery。
如要瞭解如何估算費用,請參閱估算儲存空間和查詢費用。
參閱 BigQuery 說明文件。
開始使用 BigQuery。