用戶端指標說明

使用 Bigtable 的 Java 用戶端程式庫或 Bigtable HBase 的 Java 用戶端時,即可取得用戶端指標。這個頁面詳細說明瞭各項用戶端指標。

如要瞭解如何設定及配置用戶端指標,請參閱「設定用戶端指標」。如需總覽,請參閱「用戶端指標總覽」。

指標會發布至所屬 Bigtable 叢集的區域。如果 Bigtable 無法解析指標的叢集 (例如作業失敗時),指標會發布至全球區域,且 cluster 標記的值為 unspecified

搭配使用用戶端和伺服器端指標,進行效能偵錯。如需 Bigtable 伺服器端和用戶端指標的完整清單,請參閱「指標」。

作業延遲

屬性 說明
完整指標 bigtable.googleapis.com/client/operation_latencies
定義 針對某項 Bigtable 作業,所有相關聯遠端程序呼叫 (RPC) 嘗試的端對端總延遲時間。這項指標會測量作業從用戶端到 Bigtable 再回到用戶端的往返時間,包括所有重試情況。

ReadRows 要求來說,作業延遲時間包含應用程式處理各則訊息並傳回的時間。
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 分布
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 最終作業狀態
  • 串流作業
  • 客戶名稱

嘗試延遲時間

屬性 說明
完整指標 bigtable.googleapis.com/client/attempt_latencies
定義 用戶端遠端程序呼叫 (RPC) 嘗試的延遲時間。

一般來說,這個值與 operation_latencies 相同。不過,如果用戶端收到暫時性錯誤,operation_latencies 則是所有 attempt_latencies 和指數延遲時間的總和。
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 分布
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 嘗試狀態
  • 串流作業
  • 客戶名稱

重試次數

屬性 說明
完整指標 bigtable.googleapis.com/client/retry_count
定義 這個計數器會記錄作業完成所需的嘗試次數。一般來說,這個值為空白。
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 INT64
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 最終作業狀態
  • 客戶名稱

應用程式封鎖延遲時間

屬性 說明
完整指標 bigtable.googleapis.com/client/application_blocking_latencies
定義 從用戶端收到要求的回應,到應用程式讀取回應的時間。這項指標與 ReadRows 要求最相關。這項指標的開始和停止時間取決於您傳送讀取要求的方式;詳情請參閱應用程式封鎖延遲時間計時器範例
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 分布
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 客戶名稱

應用程式封鎖延遲計時器範例

ReadRows 要求通常會以三種方式之一傳送:疊代、非同步或做為未來的呼叫。下列範例說明每種 ReadRows 作業的應用程式封鎖延遲時間,以及開始和停止時間。

反覆

long totaLatency=0;
ServerStream<Row> stream = bigtableDataClient.readRows(query);

for (Row row : stream) {
   timer.start();
   // Do something with row
   timer.stop();
   totalLatency += timer.elapsed();
}

非同步

client.readRowsAsync(query, new ResponseObserver<Row>() {
    @Override
    public void onStart(StreamController streamController) {

    }

    @Override
    public void onResponse(Row row) {
        timer.start();
        // Do something with the row
        timer.stop();
        totalLatency += timer.elapsed();
    }

    @Override
    public void onError(Throwable throwable) {
        // Do something with the error
    }

    @Override
    public void onComplete() {
    }
});

後續通話

這類 ReadRows 要求應不會造成應用程式封鎖延遲 (沒有計時器)。

List<Row> rows = bigtableDataClient.readRowsCallable().all().call(query);

首次回應延遲

屬性 說明
完整指標 bigtable.googleapis.com/client/first_response_latencies
定義 從用戶端傳送要求到收到回應的第一列資料,這段時間的延遲。
支援的 Bigtable 作業 ReadRows
類型 分布
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 最終作業狀態
  • 客戶名稱

伺服器延遲

屬性 說明
完整指標 bigtable.googleapis.com/client/server_latencies
定義 從 Google 前端接收 RPC 到傳送回應的第一個位元組之間,所經過的延遲時間。
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 發行
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 嘗試狀態
  • 串流作業
  • 客戶名稱

連線錯誤數

屬性 說明
完整指標 bigtable.googleapis.com/client/connectivity_error_count
定義 無法連上 Google 網路的請求數。在正常情況下,這個數字為 0。如果不是 0,可能表示應用程式與 Google 網路之間的連線有問題。
支援的 Bigtable 作業
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
類型 發行
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 嘗試狀態
  • 客戶名稱

用戶端封鎖延遲

屬性 說明
完整指標 bigtable.googleapis.com/client/client_blocking_latencies
定義 如果大量作業中有太多待處理要求,用戶端會封鎖傳送至伺服器的要求,進而導致延遲。如果是 2.21.0 以上版本,這項指標也會納入 gRPC 通道中佇列要求的延遲時間。
支援的 Bigtable 作業
  • ReadRow for version 2.21.0 or later
  • ReadRows for version 2.21.0 or later
  • MutateRow for version 2.21.0 or later
  • MutateRows for version 2.21.0 or later
  • SampleRowKeys for version 2.21.0 or later
  • CheckAndMutateRow for version 2.21.0 or later
  • BulkReadRows
  • BulkMutateRows
類型 發行
可用維度
  • 專案 ID
  • 執行個體 ID
  • 資料表
  • 叢集
  • 可用區
  • 應用程式設定檔 ID
  • 方法名稱
  • 客戶名稱

後續步驟