本頁面說明如何使用系統洞察資訊資訊主頁監控 Spanner 執行個體和資料庫。
關於系統深入分析
系統洞察儀表板會顯示與所選執行個體或資料庫相關的評量表和圖表,並提供延遲、CPU 使用率、儲存空間、傳輸量和其他效能統計資料的評估結果。您可以查看過去 1 小時到過去 30 天的不同時間範圍圖表。
系統洞察資訊主頁包含下列部分 (請參閱螢幕截圖):
- 資料庫清單:顯示所選資料庫的統計資料。您可以查看單一資料庫或所有資料庫的匯總資料。這項功能僅適用於執行個體。
- 版面配置切換鈕:在單欄或雙欄版面配置之間切換。
- 時間範圍篩選器:依時間範圍篩選統計資料,例如小時、天或自訂範圍。
- 評量表:顯示所選期間的某個時間點統計資料。
圖表:顯示 CPU 使用率、吞吐量、延遲時間、儲存空間用量等圖表。
如果您在執行個體中建立分區 (在預先發布版中),系統會顯示額外的下拉式選單,讓您查看單一分區或所有分區的匯總圖表。如果您尚未建立任何分區,就不會看到這個下拉式清單。
系統洞察資訊評量表、圖表和指標
系統洞察資訊主頁提供下列圖表和指標,顯示執行個體的目前和歷來狀態。大多數圖表和指標可在執行個體層級使用。您也可以查看單一執行個體中單一資料庫的多個圖表和指標。
可用的評量表
名稱 | 說明 |
---|---|
CPU 使用率 | 執行個體或所選資料庫中的 CPU 用量總計。在雙區域或多區域執行個體中,這項指標代表所有區域的 CPU 平均使用率。 |
延遲時間:P99 | 在執行個體或所選資料庫中,讀取和寫入作業的 P99 延遲時間。 |
延遲時間:P50 | 在執行個體或所選資料庫中,讀取和寫入作業的 P50 延遲時間。 |
處理量 | 每秒從執行個體或資料庫讀取或寫入的未壓縮資料量。這個值是以二進位 MB 表示,1 MB 為 2^20 個位元組。這種計算單位又稱為 MiB |
每秒作業數 | 執行個體或所選資料庫中,讀取和寫入作業的每秒作業數 (速率)。 |
儲存空間使用率 | 在執行個體層級,這是執行個體中的儲存空間總使用率。在資料庫層級,這是所選資料庫使用的儲存空間總量。 |
可用的圖表和指標
以下是指標範例的圖表:
每個圖表資訊卡的工具列都提供下列標準選項:
如要放大圖表的特定區段,請按一下圖表並水平或垂直拖曳。如要還原縮放操作,請按一下 youtube_searched_for「重設縮放」。縮放作業會同時套用至資訊主頁上的所有圖表。
如要隱藏或顯示圖例,請按一下 legend_toggle「展開/收合圖表圖例」。
如要以全螢幕模式查看圖表,請按一下 fullscreen「進入/退出全螢幕模式」。你也可以按下 Esc 鍵退出全螢幕模式。
如要查看其他選項,請按一下 more_vert「更多圖表選項」。
大部分圖表都提供下列選項:
- 下載 PNG 圖片。
- 下載 CSV 檔案。
- 新增至自訂資訊主頁。這個選項可讓您將圖表新增至 Cloud Monitoring 中的新資訊主頁或現有資訊主頁。
- 在 Metrics Explorer 中查看。在 Metrics Explorer 中查看指標。選取 Spanner 資料庫資源類型後,您可以在 Metrics Explorer 中查看其他 Spanner 指標。
下表說明系統洞察資訊主頁預設顯示的圖表。系統會列出每個圖表的指標類型。指標類型字串會遵循以下前置字串:spanner.googleapis.com/
。「指標類型」會說明可從受監控資源收集到的測量值。
圖表名稱和指標類型 |
說明 | 適用於執行個體 | 適用於資料庫 |
---|---|---|---|
依優先順序顯示 CPU 使用率 instance/cpu/utilization_by_priority |
高、中、低或所有工作 (依優先順序) 的執行個體 CPU 資源百分比。這些工作包括您發起的要求,以及 Spanner 必須迅速完成的維護工作。 如果是雙地區或多地區執行個體,系統會依地區和優先順序將指標分組。 進一步瞭解高優先順序工作。 進一步瞭解 CPU 使用率。 |
done |
close |
CPU 總使用率 instance/cpu/utilization_by_priority |
總 CPU 使用率,以執行個體的 CPU 資源百分比表示。 針對執行個體,您可以查看以資料庫分組的 CPU 總使用率堆疊圖表,或以工作類型 (使用者/系統) 和優先順序組合分組。 針對資料庫,您可以查看 CPU 總使用率的堆疊圖表,並依工作類型 (使用者/系統) 和優先順序分組。 如果是雙區或多區執行個體,您可以選擇要查看的區域,也可以將所有區域以多個折線圖顯示。 |
done |
done |
CPU 使用率 (以作業類型分組) instance/cpu/utilization_by_operation_type |
CPU 使用率堆疊圖,以執行個體的 CPU 資源百分比表示,並依使用者啟動的作業 (例如讀取、寫入和提交) 分組。如要進一步排解問題,請使用這項指標取得 CPU 使用率的詳細資料,詳情請參閱「調查 CPU 使用率過高的問題」一文。 您可以使用優先順序下拉式選單,進一步依工作優先順序進行篩選。 如果是雙地區或多地區執行個體,折線圖中的指標會顯示各地區的平均百分比。 |
done |
done |
CPU 使用率 (24 小時累計平均值) instance/cpu/smoothed_utilization |
每個資料庫的 CPU Spanner 使用率累計平均值,以執行個體 CPU 資源百分比表示。每個資料點都是過去 24 小時的平均值。 如果是雙地區或多地區執行個體,您可以使用「Region」下拉式選單,依地區篩選線圖中的指標。 |
done |
close |
變更串流讀取延遲時間 api/read_request_latencies_by_change_stream |
依變更串流分布的讀取要求延遲時間。使用這個指標可查看所有延遲時間,並區分延遲時間是針對變更串流讀取作業,還是非變更串流讀取作業。 變更串流查詢會執行一段時間,預計會持續幾秒鐘。相較之下,非變更串流查詢大多是短時間執行。您可以使用這項指標來執行下列操作:
|
close |
done |
最高的分割 CPU 用量 instance/peak_split_peak |
資料庫中所有分割所觀察到的最高分割 CPU 用量。這項指標會顯示在分割作業中使用的處理單元資源百分比。百分比超過 50% 表示為熱分割,也就是說分割作業會使用主機伺服器一半的處理單元資源。百分比為 100% 表示熱門分割,也就是使用主機伺服器處理單元資源的大部分。Spanner 會依負載進行分割,以解決熱點問題並平衡負載。不過,由於應用程式中存在問題模式,即使多次嘗試分割,Spanner 可能仍無法平衡負載。因此,持續至少 10 分鐘的熱點可能需要進一步的疑難排解,甚至可能需要應用程式變更。詳情請參閱「在分割區中找出熱點」。 | done |
done |
延遲時間 api/request_latencies |
Spanner 處理讀取或寫入要求所需的時間。使用「Function」下拉式選單選取「Read」或「Write」,或是選取「Read/Write」來查看這兩項指標。這項測量會在 Spanner 收到要求時開始,並在 Spanner 開始傳送回應時結束。 您可以使用「百分位數」下拉式選單,查看第 50 和第 99 個百分位數的延遲時間指標:
|
done |
done |
各資料庫的延遲時間 api/request_latencies |
Spanner 處理讀取或寫入要求所需的時間 (按資料庫分組)。使用「Function」下拉式選單選取「Read」或「Write」,或是選取「Read/Write」來查看這兩項指標。這個測量值會在 Spanner 收到要求時開始,並在 Spanner 開始傳送回應時結束。 您可以使用「百分位數」下拉式選單,查看第 50 和第 99 個百分位數延遲時間的指標:
|
done |
close |
延遲時間 (按照 API 方法顯示) api/request_latencies |
Spanner 處理要求所需的時間,按 Spanner API 方法分組。這個測量值會從 Spanner 收到要求開始計算,並在 Spanner 開始傳送回應時結束。 您可以使用「百分位數」下拉式選單,查看第 50 和第 99 個百分位數的延遲時間指標:
|
close |
done |
交易延遲時間 api/request_latencies_by_transaction_type |
Spanner 處理交易所需的時間。您可以選取查看讀寫和唯讀類型交易的指標。 延遲時間圖表和交易延遲時間圖表的主要差異在於,交易延遲時間圖表可讓您為唯讀類型選取領袖參與程度。您可以為唯讀交易選取「Leader is involved」或「No leader is involved」。涉及領袖的讀取作業可能會延遲較久。您可以使用這張圖表評估是否應在未與領袖通訊的情況下使用過時讀取,假設時間戳記邊界至少為 15 秒。對於讀寫交易,主要節點一律會參與交易,因此圖表中顯示的資料一律會包含要求傳送至主要節點並收到回應所需的時間。 您可以查看第 50 個百分位數和第 99 個百分位數的延遲時間指標:
|
done |
done |
各資料庫的交易延遲時間 api/request_latencies_by_transaction_type |
Spanner 處理交易所需的時間。您可以選取查看讀寫和唯讀類型交易的指標。 「延遲時間」圖表和「各資料庫的交易延遲時間」圖表的主要差異在於,後者可讓您為唯讀類型選取主要變因。您可以為唯讀交易選取「Leader is involved」或「No leader is involved」。涉及領袖的讀取作業可能會出現較長的延遲時間。您可以使用這張圖表評估是否應在未與領袖通訊的情況下使用過時讀取,假設時間戳記邊界至少為 15 秒。對於讀寫交易,主要節點一律會參與交易,因此圖表中顯示的資料一律會包含要求傳送至主要節點並收到回應所需的時間。 您可以查看第 50 個百分位數和第 99 個百分位數的延遲時間指標:
|
done |
close |
各 API 方法的交易延遲時間 api/request_latencies_by_transaction_type |
Spanner 處理交易所需的時間。您可以選取查看讀寫和唯讀類型交易的指標。 「延遲時間」圖表與「各 API 方法的交易延遲時間」圖表的主要差異在於,後者可讓您為唯讀類型選取主要變因。您可以為唯讀交易選取「Leader is involved」或「no leader is involved」。涉及領袖的讀取作業可能會出現較長的延遲時間。您可以使用這張圖表評估是否應在未與領袖通訊的情況下使用過時讀取,假設時間戳記邊界至少為 15 秒。對於讀取/寫入交易,主要節點一律會參與交易,因此圖表中顯示的資料一律會包含要求到達主要節點並收到回應所需的時間。 您可以查看第 50 和第 99 個百分位數延遲時間的指標:
|
close |
done |
每秒作業數 api/api_request_count |
Spanner 每秒執行的作業數 (讀取/寫入),或 Spanner 伺服器每秒發生的錯誤數。 您可以選擇要在這張圖表中查看哪些作業:
|
done |
done |
每秒作業數 (以資料庫分組) api/api_request_count |
Spanner 每秒執行的作業 (讀取/寫入) 數量,或 Spanner 伺服器每秒發生的錯誤數量。這張圖表會依資料庫分組。 您可以選擇要在這張圖表中查看哪些作業:
|
done |
close |
每秒作業數 (以 API 方法分組) api/api_request_count |
Spanner 每秒執行的作業數量 (按 Spanner API 方法分組) |
close |
done |
傳輸量 api/sent_bytes_count (讀取) api/received_bytes_count (寫入) |
每秒從執行個體或資料庫讀取或寫入的未壓縮資料量。這個值是以二進位位元組單位為單位。這個測量單位是以2 的冪數為基礎。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 讀取吞吐量包括 read API 和 SQL 查詢中方法的請求和回應。也包含 DML 陳述式的請求和回應。 寫入吞吐量包括透過mutation API 提交資料的要求和回應。但不包含 DML 陳述式的請求和回應。 |
done |
done |
資料庫的傳輸量 api/sent_bytes_count (讀取) api/received_bytes_count (寫入) |
每秒從例項或資料庫讀取或寫入的未壓縮資料量,以資料庫分組。這個值是以二進位位元組單位為單位。這個測量單位是以2 的冪數為基礎。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 讀取吞吐量包括 read API 和 SQL 查詢中方法的請求和回應。也包含 DML 陳述式的請求和回應。 寫入吞吐量包括透過mutation API 提交資料的要求和回應。但不包含 DML 陳述式的請求和回應。 |
done |
close |
API 方法的傳輸量 api/sent_bytes_count (讀取) api/received_bytes_count (寫入) |
每秒從例項或資料庫讀取或寫入的未壓縮資料量,按 API 方法分組。這個值是以二進位位元組單位為單位。這個測量單位是以2 的冪數為基礎。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 讀取吞吐量包括 read API 和 SQL 查詢中方法的請求和回應。也包含 DML 陳述式的請求和回應。 寫入吞吐量包括透過mutation API 提交資料的要求和回應。但不包含 DML 陳述式的請求和回應。 |
close |
done |
儲存空間總量 instance/storage/used_bytes |
儲存在執行個體或資料庫中的資料量。這個值是以二進位位元組單位為單位。舉例來說,1 個二進位千兆位元組 (GB) 是 2^30 個位元組。這種計算單位又稱為 GiB。 |
done |
done |
資料庫儲存空間總量 (以資料庫分組) instance/storage/used_bytes |
儲存在執行個體或資料庫中的資料量,以資料庫分組。這個值是以二進位位元組單位為單位。舉例來說,1 個二進位千兆位元組 (GB) 是 2^30 個位元組。這種計算單位又稱為 GiB。 |
done |
close |
資料庫儲存空間 (以資料表分組) (無) |
在執行個體或資料庫中儲存的資料量,以所選資料庫中的資料表分組。這個值是以二進位位元組單位為單位。舉例來說,1 個二進位千兆位元組 (GB) 是 2^30 個位元組。這種計算單位又稱為 GiB。 這張圖表會透過查詢 SPANNER_SYS.TABLE_SIZES_STATS_1HOUR 取得資料。詳情請參閱「
資料表大小統計資料」。 |
close |
done |
最常用的資料表 (以作業分組) (無) |
執行個體或資料庫中使用率最高的 15 個資料表和索引,取決於讀取、寫入或刪除作業的次數。 這張圖表會透過查詢資料表作業統計資料表來取得資料。詳情請參閱「 資料表作業統計資料」。 |
close |
done |
最少使用的資料表 (以作業分組) (無) |
執行個體或資料庫中使用率最低的 15 個資料表和索引,取決於讀取、寫入或刪除作業的次數。 這張圖表會透過查詢資料表作業統計資料表來取得資料。詳情請參閱「 資料表作業統計資料」。 |
close |
done |
鎖定等待時間 lock_stat/total/lock_wait_time |
交易的鎖定等待時間是指取得另一筆交易所持有資源的鎖定所需的時間。 整個資料庫的鎖定衝突總鎖定等待時間會記錄下來。 |
done |
done |
鎖定等待時間 (以資料庫分組) lock_stat/total/lock_wait_time |
交易的鎖定等待時間是指取得另一筆交易所持有資源的鎖定所需的時間。 整個資料庫的鎖定衝突總鎖定等待時間會記錄下來。 |
done |
close |
備份儲存空間總量 instance/backup/used_bytes |
與執行個體或資料庫相關聯的備份所儲存的資料量。這個值是以二進位位元組單位為單位。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 |
done |
done |
備份儲存空間總量 (以資料庫分組) instance/backup/used_bytes |
與執行個體或資料庫相關聯的備份所儲存的資料量,以資料庫分組。這個值是以二進位位元組單位為單位。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 |
done |
close |
運算資源 instance/processing_units instance/nodes |
運算資源是指執行個體中可用的處理單元或節點數量。您可以選擇以處理單元或節點來顯示容量。 |
done |
close |
領先者分布情形 instance/leader_percentage_by_region |
針對雙地區或多地區執行個體,您可以查看在特定區域內含有大多數元件 (>=50%) 的資料庫數量。在「Regions」下拉式選單中,如果選取特定區域,圖表會顯示該執行個體中,將所選區域設為領導區域的資料庫總數。如果您選取「Regions」下拉式選單中的「All regions」,圖表會針對每個區域顯示一列,每列會顯示該執行個體中以該區域為主要區域的資料庫總數。 如果資料庫位於雙地區或多地區執行個體,您可以按地區查看領導元件的百分比。舉例來說,如果資料庫在某個時間點有五個領導者,其中一個位於 us-west1,四個位於 us-east1,則「所有區域」圖表會顯示兩條線 (每個區域一條)。其中一個 us-west1 的線條為 20%,另一個 us-east1 的線條為 80%。us-west1 圖表顯示 20% 的單一線條,us-east1 圖表則顯示 80% 的單一線條。 請注意,如果資料庫是最近建立的,或是領導區最近經過修改,圖表可能無法立即穩定。 這張圖表僅適用於雙區域和多區域執行個體。 |
done |
done |
雙區域仲裁健康狀態時間軸 instance/dual_region_quorum_availability |
這張圖表僅適用於雙區域執行個體設定。這張圖表會顯示三個仲裁狀態:雙區域仲裁 ( Global ),以及各區域的單一區域仲裁 (例如 Sydney 和 Melbourne )。
當服務中斷時,時間軸會顯示橘色長條。將滑鼠游標懸停在長條上,即可查看中斷時間的開始和結束時間。請搭配使用這張圖表和錯誤率及延遲時間指標,在發生區域性故障時,做出自助式備援時機的決策。詳情請參閱「容錯移轉和復原」。 如要手動容錯移轉和容錯回復,請參閱「變更雙區域法定人數」。 |
done |
close |
遠端服務呼叫數量 query_stat/total/remote_service_calls_count |
遠端服務呼叫數量,按照服務和回應代碼分組。 以 HTTP 回應碼 (例如 200 或 500) 回應。 |
done |
done |
遠端服務呼叫的延遲時間 query_stat/total/remote_service_calls_latencies |
遠端服務呼叫的延遲時間,按照服務分組。 您可以使用「百分位數」下拉式選單,查看第 50 和第 99 個百分位數的延遲時間指標:
|
done |
done |
遠端服務處理的資料列數 query_stat/total/remote_service_processed_rows_count |
遠端服務處理的資料列數,按照服務器和回應代碼分組。 以 HTTP 回應碼 (例如 200 或 500) 回應。 |
done |
done |
遠端服務資料列延遲時間 query_stat/total/remote_service_processed_rows_latencies |
遠端服務處理的資料列數,按照服務和回應代碼分組。 您可以使用「百分位數」下拉式選單,查看第 50 和第 99 個百分位數的延遲時間指標:
|
done |
done |
遠端服務網路位元組數 query_stat/total/remote_service_network_bytes_sizes |
與遠端服務交換的網路位元組數,按照服務和方向分組。 這個值是以二進位位元組單位為單位。這個測量單位是以 2 的冪數為依據。舉例來說,1 個二進位 GB 等於 2^30 個位元組。這種計算單位又稱為 GiB。 方向是指傳送或接收的流量。 您可以使用百分位數下拉式選單,查看網路位元組交換的第 50 和第 99 個百分位數指標:
|
done |
done |
代管式自動配置器圖表和指標
除了上一節所示的選項之外,如果執行個體已啟用代管的自動配置器,運算容量圖表就會顯示「查看記錄」按鈕。按一下這個按鈕,系統就會顯示受管理的自動配置器的記錄。
已啟用受管理的自動調整器的執行個體可使用下列指標。
圖表名稱和指標類型 | 說明 |
---|---|
運算容量 | 已選取節點。 |
instance/autoscaling/min_node_count |
自動配置器設定的節點數量下限,用於分配給執行個體。 |
instance/autoscaling/max_node_count |
自動配置器的節點數量上限,可用於將節點分配給執行個體。 |
instance/autoscaling/recommended_node_count_for_cpu |
根據執行個體的 CPU 用量,建議的節點數量。 |
instance/autoscaling/recommended_node_count_for_storage |
根據執行個體的儲存空間用量,建議的節點數量。 |
運算容量 | 已選取處理單元。 |
instance/autoscaling/min_processing_units |
自動配置器設定的處理單元數量下限,可用於為執行個體分配處理單元。 |
instance/autoscaling/max_processing_units |
自動配置器可將多少個處理單元分配給執行個體。 |
instance/autoscaling/recommended_processing_units_for_cpu |
建議的處理單元數。這項建議是根據執行個體先前的 CPU 使用量所提供。 |
instance/autoscaling/recommended_processing_units_for_storage |
建議使用的處理單元數。這項建議是根據執行個體先前的儲存空間用量所提供。 |
依優先順序顯示 CPU 使用率 | |
instance/autoscaling/high_priority_cpu_utilization_target |
用於自動調度資源的高優先順序 CPU 使用率目標。 |
儲存空間總容量 | 已選取處理單元。 |
instance/storage/limit_bytes |
執行個體的儲存空間限制,以位元組為單位。 |
instance/autoscaling/storage_utilization_target |
用於自動調度資源的儲存空間使用率目標。 |
分層儲存空間圖表和指標
以下指標適用於使用分層儲存空間的執行個體。
圖表名稱和指標類型 | 說明 |
---|---|
instance/storage/used_bytes | 儲存在 SSD 和 HDD 儲存空間中的資料總位元組數。 |
instance/storage/combined/limit_bytes | 結合 SSD 和 HDD 的儲存空間限制。 |
instance/storage/combined/limit_per_processing_unit | 每個處理單元 SSD 和 HDD 的總儲存空間限制。 |
instance/storage/combined/utilization | 已使用的 SSD 和 HDD 儲存空間總量,以及儲存空間總量上限。 |
instance/disk_load | HDD 負載用量。 |
資料保留
系統洞察資訊主頁上大多數指標的資料保留期限上限為六週。不過,對於「資料庫儲存空間 (按資料表分類)」圖表,資料會從 SPANNER_SYS.TABLE_SIZES_STATS_1HOUR 資料表 (而非 Spanner) 中取用,後者的保留期限上限為 30 天。詳情請參閱「資料保留」一文。
查看系統深入分析資訊主頁
如要查看系統深入分析頁面,除了 Spanner 權限和執行個體和資料庫層級的 Spanner 權限外,您還需要具備下列身分和存取權管理 (IAM) 權限:
spanner.databases.beginReadOnlyTransaction
spanner.databases.select
spanner.sessions.create
如要進一步瞭解 Spanner IAM 權限,請參閱「使用 IAM 控管存取權」。
如果您在執行個體上啟用代管自動配置器,還需要具備 logging.logEntries.list
權限,才能查看代管自動配置器記錄。
如要進一步瞭解這項權限,請參閱「預先定義的角色」。
如要查看系統深入分析資訊主頁,請按照下列步驟操作:
在 Google Cloud 控制台中,開啟 Spanner 執行個體清單。
執行下列其中一個步驟:
如要查看執行個體的各種指標,請按一下要瞭解的執行個體名稱,然後點選導覽選單中的「系統洞察」。
如要查看資料庫的指標,請按一下執行個體名稱、選取資料庫,然後按一下導覽選單中的「系統洞察」。
選用:如要查看其他時間範圍的歷來資料,請找出頁面右上方的按鈕,然後點選要查看的時間範圍。
選用:如要控管圖表中顯示的資料,請按一下圖表中的其中一個下拉式清單。舉例來說,如果執行個體使用雙區域或多區域設定,部分圖表會提供下拉式清單,方便您查看特定區域的資料。並非所有圖表都有下拉式清單。
後續步驟
- 瞭解 Spanner 的 CPU 使用率和延遲指標。
- 使用 Monitoring 設定自訂圖表和快訊。
- 進一步瞭解 Spanner 執行個體類型。