監控

您可以利用 Google Cloud console中提供的圖表,以視覺化方式監控 Bigtable,或透過程式呼叫 Cloud Monitoring API。

在 Google Cloud 控制台中,監控資料會顯示在下列位置:

  • Bigtable 系統洞察資料
  • Bigtable 執行個體總覽
  • Bigtable 叢集總覽
  • Bigtable 資料表總覽
  • Cloud Monitoring
  • Key Visualizer

系統洞察和總覽頁面會提供 Bigtable 用量的概略資訊。您可以使用 Key Visualizer,依資料列索引鍵深入瞭解存取模式,並排解特定效能問題。

瞭解 CPU 和磁碟使用情形

無論您使用什麼工具監控叢集,重點是必須監控執行個體中每一叢集的 CPU 和磁碟使用情況。如果叢集的 CPU 或磁碟用量超過特定門檻,叢集效能就會不佳,而且您嘗試讀取或寫入資料時,可能會傳回錯誤。

CPU 使用率

叢集中的節點使用 CPU 資源來處理讀取、寫入和管理任務。建議您啟用自動調度資源,讓 Bigtable 根據工作負載自動新增及移除叢集節點。如要進一步瞭解節點數量對叢集效能的影響,請參閱「一般工作負載的效能」。

Bigtable 會回報下列 CPU 使用率指標:

指標 說明
平均 CPU 使用率

叢集中所有節點的平均 CPU 使用率。如果執行個體中的資料表已啟用變更串流功能,則會包含變更串流活動。

在應用程式設定檔圖表中,「<system>」表示系統背景活動,例如複製和壓縮。系統背景活動並非由用戶端導向。

這個建議的最大值能為使用期間短暫出現的尖峰期提供緩衝空間。

最繁忙節點的 CPU 使用率

叢集內最繁忙節點的 CPU 使用率。為確保資料的連續性,我們仍會提供這項指標,但在大多數情況下,您應使用更準確的指標「最繁忙節點的 CPU 使用率 (高精細度)」

最繁忙節點的高精細度 CPU 使用率

叢集中最繁忙節點的 CPU 使用率精細測量結果。

最熱門的節點不一定會隨著時間保持不變,而且可能會快速變更,尤其是在大型批次工作或表格掃描期間。

如果最忙碌的節點經常高於建議值,即使您的平均 CPU 使用率很合理,仍代表您可能頻繁地存取資料中的一小部分。

  • 您可以使用 Key Visualizer 工具在資料表中找出可能導致 CPU 使用率尖峰的資源使用率不均情形。
  • 檢查結構定義設計,確保其支援在每個資料表之間平均分配讀取與寫入作業。
變更串流 CPU 使用率

叢集內所有節點因變更串流活動,而產生的平均 CPU 使用率。

依應用程式設定檔、方法和資料表劃分的 CPU 使用率

依應用程式設定檔、方法和表格劃分的 CPU 使用率。

如果叢集的 CPU 用量高於預期,請使用這項指標判斷特定應用程式設定檔、API 方法或資料表的 CPU 用量是否導致 CPU 負載過高。

磁碟用量

對於執行個體中的每個叢集,Bigtable 會儲存該執行個體中所有資料表的個別副本。

Bigtable 會以二進位單位 (例如二進位 GB) 追蹤磁碟用量,其中 1 GB 為 230 個位元組。這種計算單位又稱為 GiB

Bigtable 會回報下列磁碟用量指標:

指標 說明
儲存空間使用率 (位元組)

叢集內儲存的資料量。這項指標不包含變更串流用量。

這個值會影響費用。 此外,如下所述,隨著資料量增加,您可能需要在每個叢集中新增節點。

儲存空間使用率 (最高百分比)

叢集已使用的儲存空間容量百分比。容量取決於叢集中的節點數量。這項指標不包含變更串流用量。

一般來說,請勿使用超過總儲存空間硬性限制的 70%,以免沒有空間新增更多資料。如果您預計不會在執行個體中新增大量資料,則可使用硬性限制的 100%。

如果您使用的儲存空間超過建議的儲存空間限制百分比,請為叢集新增節點。您也可以刪除現有的資料,但刪除的資料會佔用更多空間 (而不是更少),直到進行壓縮為止

如要進一步瞭解這個值的計算方式,請參閱每個節點的儲存空間使用率

變更串流儲存空間使用率 (位元組)

針對執行個體中的資料表,其變更串流記錄使用的儲存空間容量。計算儲存空間總使用率時,系統不會計入這個儲存空間容量。系統會收取變更串流儲存空間費用,但不會將這類儲存空間納入儲存空間使用率 (最大百分比) 的計算。

磁碟負載

叢集使用的頻寬在 HDD 讀取作業最大可用頻寬中所占的百分比。僅適用於 HDD 叢集。

如果這個值經常達到 100%,延遲時間可能會增加。在叢集中新增節點,降低磁碟負載百分比。

壓縮和複製的執行個體

儲存空間指標會反映上次壓縮時的磁碟資料大小。由於壓縮作業會在為期一週的期間內持續進行,叢集的儲存空間用量指標有時可能會暫時與執行個體中其他叢集的指標不同。這項異動的影響包括:

  • 最近新增至執行個體的叢集可能會暫時顯示 0 位元組的儲存空間,即使所有資料都已成功複製到新叢集也是如此。

  • 即使複製作業正常運作,每個叢集中的資料表大小也可能不同。

  • 即使複寫完成,且幾天內未傳送任何寫入作業,每個叢集的儲存空間用量指標仍可能不同。每個叢集的內部儲存空間實作方式可能不同,包括資料的分割方式和分散式儲存方式,因此實際儲存空間用量也會有所差異。

執行個體總覽

執行個體總覽頁面會顯示每個叢集目前的多項重要指標值:

指標 說明
平均 CPU 使用率

叢集中所有節點的平均 CPU 使用率。如果執行個體中的資料表已啟用變更串流功能,則會包含變更串流活動。

在應用程式設定檔圖表中,「<system>」表示系統背景活動,例如複製和壓縮。系統背景活動並非由用戶端導向。

最繁忙節點的 CPU 使用率

叢集內最繁忙節點的 CPU 使用率。為確保資料的連續性,我們仍會提供這項指標,但在大多數情況下,您應使用更準確的指標「最繁忙節點的 CPU 使用率 (高精細度)」

最繁忙節點的高精細度 CPU 使用率

叢集中最繁忙節點的 CPU 使用率精細測量結果。

最熱門的節點不一定會隨著時間保持不變,而且可能會快速變更,尤其是在大型批次工作或表格掃描期間。

如果最繁忙節點的 CPU 使用率超過所建議上限,叢集可能會產生延遲和其他問題。

已讀取列數 每秒讀取的列數。
已寫入列數 每秒寫入的資料列數。
讀取總處理量 傳送回應資料時每秒的位元組數。而如果套用篩選器,這個指標則指傳回的全部資料量。
寫入處理量 寫入資料時,每秒收到的位元組數。
系統錯誤率 在 Bigtable 伺服器端失敗的所有要求所占的百分比。
輸入內容的複製延遲時間 寫入另一個叢集的資料複製到這個叢集所需的時間,以第 99 個百分位數表示,單位為秒。
輸出內容的複製延遲時間 寫入這個叢集後複製到另一個叢集所需的時間,以第 99 個百分位數表示,單位為秒。

若要查看這些關鍵指標的總覽︰

  1. 在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看指標的執行個體。 Google Cloud 控制台會顯示執行個體叢集的目前指標。

叢集總覽

使用叢集總覽頁面,瞭解個別叢集的目前和過往狀態。

叢集總覽頁面會顯示圖表,列出每個叢集的下列指標:

指標 說明
節點數量 叢集在特定時間使用的節點數量。
節點數量上限目標 啟用自動調度資源功能後,Bigtable 叢集可擴充的節點數量上限。只有在叢集啟用自動調度資源功能時,才會顯示這項指標。您可以在「編輯叢集」頁面中變更這個值。
節點數量目標下限 啟用自動調度資源功能後,Bigtable 會將叢集縮減至這個節點數量下限。只有在叢集啟用自動調度資源功能時,才會顯示這項指標。您可以在「編輯叢集」頁面中變更這個值。
建議的 CPU 目標節點數 Bigtable 根據您設定的 CPU 使用率目標,為叢集建議的節點數量。只有在叢集啟用自動調度資源功能時,才會顯示這項指標。如果這個數字高於節點數量上限目標,請考慮提高 CPU 使用率目標,或增加叢集的節點數量上限。如果這個數字低於節點數量下限,表示叢集可能過度佈建,您應考慮降低下限。
儲存空間目標的建議節點數 Bigtable 根據內建儲存空間使用率目標,為叢集建議的節點數量。只有在叢集啟用自動調度資源功能時,才會顯示這項指標。如果這個數字高於節點數上限目標,請考慮提高叢集的節點數上限。
CPU 使用率

叢集中所有節點的平均 CPU 使用率。如果執行個體中的資料表已啟用變更串流功能,則會包含變更串流活動。

在應用程式設定檔圖表中,「<system>」表示系統背景活動,例如複製和壓縮。系統背景活動並非由用戶端導向。

儲存空間用量

叢集內儲存的資料量。這項指標不包含變更串流用量。

從這項指標可以看出,Bigtable 儲存資料時會壓縮資料。

如要查看叢集的總覽頁面,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看指標的執行個體。

  3. 前往顯示部分叢集指標目前狀態的章節後方章節。

  4. 按一下叢集 ID,開啟叢集的「叢集總覽」頁面。

記錄

「記錄」圖表會顯示叢集的系統事件記錄項目。系統事件記錄檔只會為使用自動調度資源的叢集產生。如要瞭解查看 Bigtable 稽核記錄的其他方式,請參閱「稽核記錄」。

表格總覽

使用資料表總覽頁面,瞭解個別資料表的目前和過去狀態。

表格總覽頁面會顯示圖表,列出表格的下列指標。每個圖表都會顯示表格中每個叢集的個別折線。

指標 說明
儲存空間使用率 (位元組)

資料表使用的叢集儲存空間容量百分比。容量取決於叢集中的節點數量。

如要進一步瞭解這個值的計算方式,請參閱每個節點的儲存空間使用率

CPU 使用率

叢集中所有節點的平均 CPU 使用率。如果執行個體中的資料表已啟用變更串流功能,則會包含變更串流活動。

在應用程式設定檔圖表中,「<system>」表示系統背景活動,例如複製和壓縮。系統背景活動並非由用戶端導向。

讀取延遲

讀取要求傳回回應的時間。

系統會從 Bigtable 接收要求時開始計算讀取延遲時間,並於資料的最後一個位元組傳送至用戶端時停止計算。對於資料量較大的要求,用戶端能否存取回應可能會影響讀取延遲時間。

寫入延遲

寫入要求傳回回應的時間。

已讀取列數

每秒讀取的列數。

對於 Bigtable 的總處理量,此指標可以提供比讀取要求數更有用的檢視角度,因為一項要求可能會讀取大量的資料列。

已寫入列數

每秒寫入的資料列數。

對於 Bigtable 的總處理量,此指標可以提供比寫入要求數更有用的檢視角度,因為一項要求可能會寫入大量的資料列。

讀取要求 每秒的隨機讀取和掃描要求次數。
寫入要求 每秒寫入要求數。
讀取總處理量 傳送回應資料時每秒的位元組數。而如果套用篩選器,這個指標則指傳回的全部資料量。
寫入處理量 寫入資料時,每秒收到的位元組數。
自動容錯移轉

由於發生容錯移轉情況 (例如服務短暫中斷或延遲),而從某個叢集自動重新轉送至其他叢集的要求數量。如果應用程式設定檔採用多叢集轉送功能,系統就有可能會自動重新轉送。

請注意,這張圖表不含手動重新轉送的要求。

資料表總覽頁面也會顯示執行個體中每個叢集的資料表複寫狀態。頁面會顯示每個叢集的下列資訊:

  • 狀態
  • 叢集 ID
  • 可用區
  • 資料表使用的叢集儲存空間量
  • 加密金鑰和金鑰狀態
  • 所選表格的最新備份日期
  • 「編輯叢集」頁面的連結。

如要查看資料表的總覽頁面,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看指標的執行個體。

  3. 按一下左側窗格中的「資料表」。 Google Cloud 主控台會顯示執行個體中的所有資料表。

  4. 按一下資料表 ID,開啟資料表的「Table overview」(資料表總覽) 頁面。

長期監控成效

使用 Bigtable 執行個體的系統洞察頁面,瞭解執行個體的過往效能。您可以分析每個叢集的效能,並細分不同類型 Bigtable 資源的指標。圖表可顯示過去 1 小時到 6 週的資料。

Bigtable 資源的系統洞察資訊圖表

Bigtable 系統洞察頁面會提供下列類型 Bigtable 資源的圖表:

  • 執行個體
  • 資料表
  • 應用程式設定檔
  • 複製

系統洞察頁面的圖表會顯示下列指標:

指標 適用於 說明
CPU 使用率 執行個體
資料表
應用程式設定檔

叢集中所有節點的平均 CPU 使用率。如果執行個體中的資料表已啟用變更串流功能,則會包含變更串流活動。

在應用程式設定檔圖表中,「<system>」表示系統背景活動,例如複製和壓縮。系統背景活動並非由用戶端導向。

高精細度 CPU 使用率 (最繁忙的節點) 執行個體

叢集中最繁忙節點的 CPU 使用率精細測量結果。

最熱門的節點不一定會隨著時間保持不變,而且可能會快速變更,尤其是在大型批次工作或表格掃描期間。

如果最繁忙節點的 CPU 使用率超過所建議上限,叢集可能會產生延遲和其他問題。

Data Boost 無伺服器處理單元 (SPU) 執行個體 可計費的 Data Boost 運算用量,以無伺服器處理單元使用秒數為單位。
讀取延遲 執行個體
資料表
應用程式設定檔

讀取要求傳回回應的時間。

系統會從 Bigtable 接收要求時開始計算讀取延遲時間,並於資料的最後一個位元組傳送至用戶端時停止計算。對於資料量較大的要求,用戶端能否存取回應可能會影響讀取延遲時間。

SQL 讀取延遲時間 執行個體
應用程式設定檔

SQL 讀取要求的回應時間。

系統會從 Bigtable 收到要求時開始計算 SQL 讀取延遲時間,並於資料的最後一個位元組傳送至用戶端時停止計算。如果要求的資料量較大,用戶端的回應處理能力可能會影響 SQL 讀取延遲時間。

寫入延遲 執行個體
資料表
應用程式設定檔

寫入要求傳回回應的時間。

用戶端讀取延遲時間 執行個體
資料表
應用程式設定檔

針對某項 Bigtable 作業,所有相關聯遠端程序呼叫 (RPC) 嘗試的端對端總延遲時間。測量作業從用戶端到 Bigtable 再回到用戶端的往返時間,包括所有重試情況。

用戶端 SQL 讀取延遲時間 執行個體
資料表
應用程式設定檔

針對某項 Bigtable 作業,所有相關聯遠端程序呼叫 (RPC) 嘗試的端對端總延遲時間。

測量作業從用戶端到 Bigtable 再回到用戶端的往返時間,包括所有重試情況。以 ExecuteQuery 要求來說,作業延遲時間包含應用程式處理各則訊息並傳回的時間。

用戶端寫入作業延遲時間 執行個體
資料表
應用程式設定檔

針對某項 Bigtable 作業,所有相關聯遠端程序呼叫 (RPC) 嘗試的端對端總延遲時間。測量作業從用戶端到 Bigtable 再回到用戶端的往返時間,包括所有重試情況。

用戶端讀取嘗試延遲時間 執行個體
資料表
應用程式設定檔

用戶端遠端程序呼叫 (RPC) 讀取嘗試的延遲時間。一般來說,這個值與 operation_latencies 相同。不過,如果用戶端收到暫時性錯誤,operation_latencies 則是所有 attempt_latencies 和指數延遲時間的總和。

用戶端 SQL 讀取嘗試延遲時間 執行個體
資料表
應用程式設定檔

用戶端 SQL 讀取遠端程序呼叫 (RPC) 嘗試的延遲時間。一般來說,這個值與 operation_latencies 相同。不過,如果用戶端收到暫時性錯誤,operation_latencies 則是所有 attempt_latencies 和指數延遲時間的總和。

用戶端寫入嘗試延遲時間 執行個體
資料表
應用程式設定檔

用戶端遠端程序呼叫 (RPC) 寫入嘗試的延遲時間。一般來說,這個值與 operation_latencies 相同。不過,如果用戶端收到暫時性錯誤,operation_latencies 則是所有 attempt_latencies 和指數延遲時間的總和。

使用者錯誤率 執行個體

要求內容造成的錯誤率,並非 Bigtable 伺服器端的錯誤。使用者錯誤率包含下列狀態碼

  • INVALID_ARGUMENT
  • NOT_FOUND
  • PERMISSION_DENIED
  • RESOURCE_EXHAUSTED
  • OUT_OF_RANGE

使用者錯誤通常是設定問題所致,例如指定了錯誤的叢集、資料表或應用程式設定檔的要求。

系統錯誤率 執行個體 在 Bigtable 伺服器端失敗的所有要求所占的百分比。 系統錯誤率包含下列狀態碼
  • 不明
  • ABORTED
  • UNIMPLEMENTED
  • INTERNAL
  • UNAVAILABLE
自動容錯移轉 執行個體
資料表
應用程式設定檔

由於發生容錯移轉情況 (例如服務短暫中斷或延遲),而從某個叢集自動重新轉送至其他叢集的要求數量。如果應用程式設定檔採用多叢集轉送功能,系統就有可能會自動重新轉送。

請注意,這張圖表不含手動重新轉送的要求。

SQL 自動容錯移轉 執行個體
資料表
應用程式設定檔

因為發生需容錯移轉的情況 (例如服務短暫中斷或延遲),而從某個叢集自動重新轉送至其他叢集的 SQL 要求數量。如果應用程式設定檔採用多叢集轉送功能,系統就有可能會自動重新轉送。

請注意,這張圖表不含手動重新轉送的要求。

儲存空間使用率 (位元組) 執行個體
資料表

叢集內儲存的資料量。這項指標不包含變更串流用量。

從這項指標可以看出,Bigtable 儲存資料時會壓縮資料。

儲存空間使用率 (最高百分比) 執行個體

叢集已使用的儲存空間容量百分比。容量取決於叢集中的節點數量。這項指標不包含變更串流用量。

如要進一步瞭解這個值的計算方式,請參閱每個節點的儲存空間使用率

磁碟負載 執行個體 叢集使用的頻寬在 HDD 讀取作業最大可用頻寬中所占的百分比。僅適用於 HDD 叢集。
已讀取列數 執行個體
資料表
應用程式設定檔

每秒讀取的列數。

對於 Bigtable 的總處理量,此指標可以提供比讀取要求數更有用的檢視角度,因為一項要求可能會讀取大量的資料列。

已寫入列數 執行個體
資料表
應用程式設定檔

每秒寫入的資料列數。

對於 Bigtable 的總處理量,此指標可以提供比寫入要求數更有用的檢視角度,因為一項要求可能會寫入大量的資料列。

讀取要求 執行個體
資料表
應用程式設定檔
每秒的隨機讀取和掃描要求次數。
寫入要求 執行個體
資料表
應用程式設定檔
每秒寫入要求數。
讀取總處理量 執行個體
資料表
應用程式設定檔
傳送回應資料時每秒的位元組數。而如果套用篩選器,這個指標則指傳回的全部資料量。
寫入處理量 執行個體
資料表
應用程式設定檔
寫入資料時,每秒收到的位元組數。
寫入處理量 執行個體
資料表
應用程式設定檔
寫入資料時,每秒收到的位元組數。
節點數 執行個體 叢集中的節點數。
符合 Data Boost 流量資格 應用程式設定檔 目前符合和不符合 Data Boost 使用條件的 Bigtable 要求數。
不適用 Data Boost 的流量原因 應用程式設定檔 目前流量不適用 Data Boost 的原因。

若要查看這些資源的指標:

  1. 在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看指標的執行個體。

  3. 按一下左側窗格中的「系統洞察」。 Google Cloud 控制台會顯示執行個體的一系列圖表,以及執行個體指標的表格檢視畫面。根據預設, Google Cloud 控制台會顯示過去一小時的指標,並顯示執行個體中每個叢集的個別指標。

    要查看所有圖表,請捲動顯示圖表的窗格。

    如要查看表格層級的指標,請按一下「表格」

    如要查看個別應用程式設定檔的指標,請按一下「應用程式設定檔」

    要查看執行個體整體的組合指標,請找出圖表上方的 [分組] 區段,然後按一下 [執行個體]

    如要查看較長一段時間的指標,請按一下「1 小時」旁的箭頭。選擇預設時間範圍或輸入自訂時間範圍,然後按一下「套用」

複製功能的圖表

系統洞察頁面會提供圖表,顯示一段時間內的複製延遲。您可以查看第 50、第 99 和第 100 個百分位數的寫入複製平均延遲時間。

如何查看一段時間內的複製延遲時間︰

  1. 在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看指標的執行個體。

  3. 按一下左側窗格中的「系統洞察」。頁面開啟後會選取「執行個體」分頁。

  4. 按一下「Replication」(複寫) 分頁標籤。Google Cloud 控制台會顯示一段時間內的複製延遲。根據預設, Google Cloud 主控台會顯示過去一小時的複製延遲時間。

    如要切換依資料表或叢集分組的延遲時間圖表,請使用「Group by」(分組依據) 選單。

    如要變更要查看的百分位數,請使用「百分位數」選單。

    如要查看較長一段時間的指標,請按一下「1 小時」旁的箭頭。選擇預設時間範圍或輸入自訂時間範圍,然後按一下「套用」

使用 Cloud Monitoring 監控

Bigtable 會將使用情況指標匯出至 Cloud Monitoring。您可以透過多種方式使用這些指標:

  • 使用 Cloud Monitoring API 以程式輔助方式監控。
  • 在 Metrics Explorer 中以視覺化方式監控。
  • 設定快訊政策
  • 將 Bigtable 使用情況指標新增至自訂資訊主頁
  • 使用圖表程式庫 (例如 Python 的 Matplotlib),繪製及分析 Bigtable 的用量指標。

如何在 Metrics Explorer 中查看使用情況指標︰

  1. 在 Google Cloud 控制台中開啟「Monitoring」頁面。

    開啟「Monitoring」頁面

    如果系統提示您選擇帳戶,請選擇用來存取 Google Cloud的帳戶。

  2. 按一下 [Resources] (資源),然後按一下 [Metrics Explorer]

  3. 在「Find resource type and metric」下方,輸入 bigtable。系統會顯示 Bigtable 資源和指標清單。

  4. 按一下某一指標,以查看該指標的圖表。

如要進一步瞭解如何使用 Cloud Monitoring,請參閱 Cloud Monitoring 說明文件

如需 Bigtable 指標的完整清單,請參閱「指標」一文。

建立儲存空間用量快訊

您可以設定快訊,在 Bigtable 集群超出指定門檻時收到通知。如要進一步瞭解如何判斷目標儲存空間使用率,請參閱「磁碟用量」。

如要建立快訊政策,以便在 Bigtable 叢集的儲存空間使用率超過建議門檻 (例如 70%) 時接收通知,請使用下列設定。

「新條件」
「欄位」

資源和指標 在「資源」選單中,選取「Cloud Bigtable 叢集」
在「指標類別」選單中,選取「叢集」
在「指標」選單中,選取「儲存空間用量」

(指標類型為 bigtable.googleapis.com/cluster/storage_utilization)。
篩選 cluster = YOUR_CLUSTER_ID
設定快訊觸發條件
欄位

條件類型 Threshold
符合下列情況時觸發條件 Any time series violates
門檻位置 Above threshold
門檻值 70
重新測試週期 10 minutes

後續步驟