配額與限制
這份文件列出 Bigtable 適用的配額和系統限制。
- 「配額」有預設值,但通常可以申請調整。
- 「系統限制」是固定值,無法變更。
Google Cloud 使用配額來確保公平性,並減少資源使用量和可用性出現劇烈波動的情況。配額會限制 Google Cloud 專案可使用的Google Cloud 資源數量,配額適用多種資源類型,包括硬體、軟體和網路元件。舉例來說,配額可能會限制能向特定服務發出的 API 呼叫次數、專案可同時使用的負載平衡器數量,或是可建立的專案數量。配額機制可防止服務過載,保障Google Cloud 使用者社群的權益,同時也有助於您管理自己的 Google Cloud 資源。
Cloud Quotas 系統具備以下功能:
如果嘗試使用的資源量超過配額限制,系統通常會阻擋該資源的存取活動,您所執行的工作就會失敗。
配額的計算通常是以 Google Cloud 專案為基準。在某個專案中使用資源,不會影響另一個專案的可用配額。在同一個 Google Cloud 專案內,所有應用程式和 IP 位址會共用配額。
詳情請參閱「Cloud Quotas 總覽」。
如要調整大部分配額,請使用 Google Cloud 控制台。詳情請參閱「要求調整配額」。
Bigtable 資源也設有系統限制。而且無法變更。
配額
本節說明適用於所有 Bigtable 用量的預設配額。
管理作業配額
下列配額會影響您在指定時間內可執行的 Bigtable 管理作業數量 (呼叫 Admin API)。
一般來說,除非另有指示,否則您無法要求提高管理員作業配額。如果提供充分理由,有時可獲得例外處理。不過,應用程式對 Admin API 的呼叫次數不應隨著用量增加而增加。如果發生這種情況,通常表示應用程式程式碼對 Admin API 進行不必要的呼叫,您應變更應用程式,而非要求增加管理員作業配額。
系統會在太平洋時間凌晨 12 點重設每日配額。
| 名稱 | 說明 | 預設配額 |
|---|---|---|
| 執行個體和叢集 | ||
| 執行個體和叢集讀取要求 | 讀取執行個體或叢集的設定 (例如執行個體名稱或叢集中的節點數量),或是讀取執行個體清單 |
每項專案每日 864,000 次操作 (平均每秒 10 次操作) 每位使用者每分鐘:1,000 次作業 |
| 執行個體和叢集寫入要求 | 變更執行個體或叢集的設定 (例如執行個體名稱或叢集中的節點數量),或是建立新的執行個體 |
每項專案每日 500 次操作 每位使用者每分鐘:100 項作業 |
| 應用程式設定檔 | ||
| 應用程式設定檔讀取要求 | 讀取應用程式設定檔的設定 |
每項專案每分鐘:5,000 項作業 每位使用者每分鐘:1,000 次作業 |
| 應用程式設定檔寫入要求 | 變更應用程式設定檔的設定 |
每項專案每分鐘:500 項作業 每位使用者每分鐘:100 項作業 |
| Tables | ||
| 資料表管理員讀取要求 | 讀取資料表的設定 (例如資料表的資料欄系列詳細資料),或是讀取資料表清單 |
每項專案每日 864,000 次操作 (平均每秒 10 次操作) 每位使用者每分鐘:1,000 次作業 |
| 資料表管理員寫入要求 | 變更資料表的設定 (例如資料欄系列的垃圾收集設定) |
每項專案每日 5,000 次操作 每位使用者每分鐘:100 項作業 |
DropRowRange 方法 |
在單次作業中刪除資料表內特定範圍的資料列。 |
每項專案每日 5,000 次操作 每位使用者每分鐘:100 項作業 |
| 備份 | ||
| 備份作業 | 建立、更新及刪除備份。 |
每項專案每日 1,000 次操作 每位使用者每分鐘:10 項作業1 |
| 備份擷取要求 | 取得及列出備份。 |
每項專案每日 864,000 次操作 |
RestoreTable 方法 |
將備份復原到新資料表。 |
每項專案每日 5,000 次操作 每位使用者每分鐘:100 項作業 |
| Identity and Access Management | ||
| 精細的 ACL 取得要求 | 讀取 Bigtable 執行個體的 IAM 政策相關資訊,或測試執行個體的 IAM 權限。 |
每項專案每日 864,000 次操作 (平均每秒 10 次操作) 每位使用者每分鐘:1,000 次作業 |
| 精細的 ACL 設定要求 | 變更 Bigtable 執行個體的 IAM 政策。 |
每項專案每日 864,000 次操作 (平均每秒 10 次操作) 每位使用者每分鐘:1,000 次作業 |
|
||
節點配額
Google Cloud 專案包含 Bigtable 執行個體,也就是叢集的容器。叢集代表在單一可用區中執行的實際 Bigtable 服務。叢集包含節點,也就是可讓 Bigtable 管理資料的運算資源。
每個專案在各可用區可佈建的預設節點數量,取決於區域。在專案中,您最多可以佈建預設數量的 HDD 節點,以及預設數量的 SSD 節點。
預設節點配額如下:
| 區域 | SSD | HDD |
|---|---|---|
| asia-east1 | 100 | 100 |
| europe-west1 | 200 | 200 |
| us-central1 | 200 | 200 |
| us-east1 | 50 | 50 |
| us-east4 | 50 | 50 |
| us-west1 | 100 | 100 |
| 所有其他 Bigtable 位置 | 30 | 30 |
如果為叢集啟用自動調度資源功能,則設定的節點數量上限會計入這項限制,即使叢集未調度至該節點數量也一樣。如需佈建超過預設限制的節點,可以要求提高配額。
配額和節點可用性
節點配額是指您在各專案中,每個可用區可佈建的節點數量上限。配額不保證您隨時可以將節點新增至叢集。如果可用區沒有節點,即使專案仍有配額,您也可能無法在該可用區的叢集新增節點。
舉例來說,如果您嘗試將 10 個 SSD 節點新增至已有 20 個節點的叢集,但可用區沒有節點,則即使該區域的 SSD 節點配額為 30 個,您也無法新增這 10 個節點。
在這種情況下,我們會嘗試增加可用區的節點資源,並在這些資源可用後授予您的要求,但不保證時間和完成。
您佈建的節點保證隨時可用。
Data Boost 配額
下列伺服器處理單元 (SPU) 配額適用於每個專案和區域。
| 區域 | SPU |
|---|---|
| asia-east1 | 100,000 |
| europe-west1 | 200,000 |
| us-central1 | 200,000 |
| us-east1 | 100,000 |
| us-east4 | 100,000 |
| us-west1 | 100,000 |
| 所有其他 Bigtable 位置 | 30,000 |
如要進一步瞭解 Data Boost,請參閱「Data Boost 總覽」。
查看配額資訊
如要查看 Google Cloud 專案在各可用區中已有的 SSD 和 HDD 節點數量,請使用 Google Cloud console。在左側導覽窗格中,將滑鼠游標指向「IAM & admin」(IAM 與管理),按一下「Quotas」(配額),然後使用「Service」(服務) 下拉式選單選取 Bigtable Admin API 服務。
頁面中會顯示多個資料列,當中含有每個服務、節點類型和位置組合的配額。請找到副標題為「SSD nodes per zone」或「HDD nodes per zone」的資料列。「Limit」(限制) 欄會顯示指定節點類型和位置允許的節點數量上限,「Current usage」(目前用量) 欄則會顯示現有的節點數量。這兩個數值之間的差額即為您可以自由新增的節點數量,不必申請提高配額。
申請提高節點配額
為確保有足夠時間處理您的要求,請務必提前規劃,並在可能需要額外資源的前幾天提出要求。我們不保證一定會核准提高節點配額的要求。詳情請參閱「使用配額」。
您必須至少具備編輯者層級權限,才能要求提高節點配額。
申請提高節點配額不會產生任何費用。除非您使用了更多資源,否則費用不會增加。
- 前往「配額」頁面。
- 在「配額」頁面中,選擇您要變更的配額項目。
- 按一下頁面頂端的 [編輯配額] 按鈕。
- 在右側面板中輸入您的姓名、電子郵件地址和電話號碼,然後按一下 [下一步]。
- 輸入您要申請的配額上限,然後按一下 [下一步]。
- 提交要求。
限制
本節說明 Bigtable 的用量限制。這些限制已內建在服務中,無法變更。
每個執行個體的應用程式設定檔數量限制
每個執行個體最多可以有 2,000 個應用程式設定檔。
授權檢視表限制
- 每個 Bigtable 執行個體的授權檢視表數量:最多 10,000 個
- 每個授權檢視表的資料欄限定詞前置字串:10 個
備份限制
- 可建立的標準備份數量上限:每個叢集每個資料表 150 個
- 可建立的熱備份數量上限:每個叢集每個資料表 10 個
- 備份的最短保留期限:初次建立時間後 6 小時
- 備份的最長保留期限:Enterprise 方案為 90 天,Enterprise Plus 版為 365 天,從初始建立日期算起
變更串流限制
資料表變更串流的保留期限上限為七天。
持續性 materialized view 限制
- 每個執行個體的持續性 materialized view 數量:50
- 每個資料表的持續性 materialized view 數量:5
Data Boost 限制
叢集每秒最多可接收 1,000 項 Data Boost 讀取要求。
資料大小在資料表限制內
建議限制
設計結構定義,將資料大小控制在建議的限制範圍內。
- 每個資料表的資料欄系列:100 個
- 單一資料欄限定詞:16 KB
- 資料表儲存格中的單一值:10 MB
- 單一資料列中的所有值:100 MB
硬性限制
另外,您也「必須」確保資料不會超過下列固定限制:
- 單一資料列索引鍵:4 KB
- 資料表儲存格中的單一值:100 MB
- 單一資料列中的所有值:256 MB
- 單一異動:200 MB
這些大小限制是以二進位 KB 和二進位 MB 表示。1 KB 為 210 個位元組,1 MB 為 220 個位元組。這兩種計算單位又稱為 KiB 和 MiB。
ID 長度限制
以下是 Bigtable 支援的 ID 長度下限和上限 (字元數)。
- 應用程式設定檔:1-50
- 授權檢視表:1 至 50
- 備份:1-50
- 叢集:6-40
- 資料欄系列:1 至 64 個字元
- 執行個體:6-33
- 結構定義組合:1 到 50
- 表格:1-50
- 檢視:1-128
記憶體內層限制
記憶體內層級適用下列限制:
- 資源調度:記憶體內層級支援水平資源調度 (透過自動調度資源) 和垂直資源調度。每個 Enterprise Plus 節點的基本容量為 40,000 記憶體內 QPS。啟用記憶體內層級後,節點可以垂直擴充,以 40,000 QPS 為單位增加支援的資料量,每個節點最多可達 120,000 記憶體內 QPS。詳情請參閱「瞭解效能」。
- 資料列大小:記憶體內層不會提供每個資料列索引鍵超過 1 MiB 的資料列。
每個執行個體的邏輯檢視表數量限制
Bigtable 每個執行個體最多支援 1,000 個邏輯檢視。
作業限制
將多項異動以單一批次傳送至 Bigtable 時,適用下列限制:
呼叫
CheckAndMutate的一批條件式異動,最多可包含 100,000 項 true 異動「和」100,000 項 false 異動。在所有其他類型的異動批次中,批次內最多可包含 100,000 項異動。
每個執行個體的區域數量限制
Bigtable 執行個體中的叢集最多可以分布於 8 個提供 Bigtable 的區域。您可以在區域中的每個可用區建立一個叢集。如需可用可用區清單,請參閱「Bigtable 位置」。
資料列篩選器限制
資料列篩選器的大小不得超過 20 KB。如果收到錯誤訊息,請重新設計篩選器或縮短篩選器的長度。
已儲存的查詢限制
| 值 | 限制 |
|---|---|
| 每個專案的已儲存的查詢數量上限 (包括其他 Google Cloud 產品的已儲存的查詢) | 10,000 |
| 每項查詢的大小上限 | 1 MiB |
結構定義組合限制
結構定義套件有以下限制:
- 每個資料表的結構定義組合:每個資料表最多可建立 10 個結構定義組合。這項限制適用於 protobuf 和 Avro 結構定義套件。
- 結構定義套件大小:結構定義套件中,序列化通訊協定緩衝區描述元或 JSON 格式的 Avro 結構定義不得超過 4 MB。
每個節點的儲存空間限制
如果叢集沒有足夠的節點,根據目前的 CPU 工作負載和儲存的資料量,Bigtable 將沒有足夠的 CPU 資源來管理與叢集相關聯的所有 Tablet。Bigtable 也無法在背景執行必要的維護工作。因此,叢集可能無法處理傳入的要求,延遲時間也會增加。詳情請參閱「儲存空間用量與效能之間的權衡」。
為避免發生這些問題,請監控叢集的儲存空間使用率,確保叢集有足夠的節點能夠處理叢集中的所有資料。請使用以下限制來計算所需的節點數量:
| 儲存空間設定 | Enterprise 版 | Enterprise Plus 版 |
|---|---|---|
| 不含分層儲存空間的 SSD 叢集 (預先發布版) | 每個節點 5 TB | 每個節點 5 TB |
| 採用分級式儲存空間的 SSD 叢集 | 每個節點 32 TB,其中最多 5 TB 為 SSD 儲存空間。 | 每個節點 64 TB,其中最多 5 TB 為 SSD 儲存空間。 |
| HDD 叢集 | 每個節點 16 TB | 每個節點 16 TB |
| 記憶體內層 (預先發布版) | 不支援 | 每個節點 8 GB |
TB 值是以二進位 TB 為單位,1 TB 等於 240 個位元組。這種計算單位又稱為 TiB。
最佳做法是為叢集新增足夠的節點,將使用率維持在上限的 70%,這樣就能因應忽然升高的儲存空間使用情況。舉例來說,如果您在採用 SSD 儲存空間的叢集中儲存 50 TB 的資料,則應佈建至少 15 個節點,最多可處理 75 TB 的資料。如果您預計不會新增大量資料至叢集中,那麼超過這個建議值也無妨,您甚至可以讓儲存的資料量達到上限的 100%。
每個執行個體的資料表數量限制
Bigtable 每個執行個體最多支援 1,000 個資料表。materialized view 會計入資料表數量。
使用政策
使用本服務時,您必須遵守《服務條款》和 Google 的《隱私權政策》。