Descrições das métricas do lado do cliente

As métricas do lado do cliente estão disponíveis para várias bibliotecas de cliente do Bigtable. Esta página contém uma descrição detalhada de cada métrica do lado do cliente.

Para Go, C++ e Node.js, essas métricas são ativadas por padrão nas versões compatíveis. Para as bibliotecas de cliente Java, as métricas estão disponíveis como um recurso de ativação ou por padrão, dependendo da versão da biblioteca de cliente. Para informações sobre as versões específicas, consulte a seção "Suporte à biblioteca de cliente" de cada métrica.

Para saber como configurar métricas do lado do cliente, consulte este link. Para ter uma visão geral, consulte a Visão geral das métricas do lado do cliente.

As métricas são publicadas na região do cluster do Bigtable para que são destinadas. Se o Bigtable não conseguir resolver o cluster de uma métrica, como quando uma operação falha, ela é publicada na região global e a tag cluster tem o valor unspecified.

Use métricas do lado do cliente com métricas do servidor para depurar o desempenho. Para uma lista abrangente de métricas do lado do servidor e do cliente do Bigtable, consulte Métricas.

Latências de operação

A tabela a seguir mostra os atributos e detalhes da métrica de latências de operação.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/operation_latencies
Definição A latência total de ponta a ponta em todas as tentativas de RPC associadas a uma operação do Bigtable. Essa métrica mede o tempo de retorno de uma operação do cliente ao Bigtable e de volta ao cliente, incluindo todas as novas tentativas.

Para solicitações ReadRows, as latências de operação incluem o tempo de processamento do aplicativo para cada mensagem retornada.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status final da operação
  • operação de streaming
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de latências de operação.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.40.0

Latências de tentativa

A tabela a seguir mostra os atributos e detalhes da métrica de latências de tentativa.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/attempt_latencies
Definição As latências de uma tentativa de RPC do cliente.

Em circunstâncias normais, esse valor é idêntico a operation_latencies. No entanto, se o cliente receber erros transitórios, operation_latencies será a soma de todos os attempt_latencies e atrasos exponenciais.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status da tentativa
  • operação de streaming
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de latências de tentativa.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.40.0

Contagem de repetições

A tabela a seguir mostra os atributos e detalhes da métrica de contagem de novas tentativas.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/retry_count
Definição Um contador que registra o número de tentativas que uma operação solicitou a conclusão. Em circunstâncias normais, esse valor está vazio.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo INT64
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status final da operação
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de contagem de novas tentativas.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.40.0

Latências de bloqueio de aplicativos

A tabela a seguir mostra os atributos e detalhes da métrica de latências de bloqueio de aplicativos.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/application_blocking_latencies
Definição O momento em que o cliente recebe a resposta de uma solicitação até que o aplicativo leia a resposta. Essa métrica é mais relevante para solicitações ReadRows. Os horários de início e término dessa métrica dependem da maneira como você envia a solicitação de leitura. Consulte Exemplos de timer de latência de bloqueio de aplicativos para mais detalhes.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de latências de bloqueio de aplicativos.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.38.0
Node.js 6.3.0 (operação ReadRows)
C++ 2.41.0

Exemplos de timer de latência de bloqueio de aplicativos

Geralmente, as solicitações de ReadRows são enviadas de três maneiras: de maneira iterativa, assíncrona ou como uma chamada futura. Os exemplos a seguir demonstram os horários de início e término das latências de bloqueio de aplicativos para cada tipo de operação ReadRows.

Iterativo

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

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

Assíncrona

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() {
    }
});

Chamada futura

As latências de bloqueio do aplicativo precisam ser aproximadamente 0 (sem timer) para esse tipo de solicitação ReadRows.

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

Latências de primeira resposta

A tabela a seguir mostra os atributos e detalhes da métrica de latências da primeira resposta.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/first_response_latencies
Definição Latências de quando um cliente envia uma solicitação e recebe a primeira linha da resposta.
Operação do Bigtable compatível ReadRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status final da operação
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de latências da primeira resposta.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.40.0

Latências do servidor

A tabela a seguir mostra os atributos e detalhes da métrica de latências do servidor.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/server_latencies
Definição Latências entre o momento em que o front-end do Google recebe uma RPC e quando ele envia o primeiro byte da resposta.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status da tentativa
  • operação de streaming
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de latências do servidor.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.41.0

Contagem de erros de conectividade

A tabela a seguir mostra os atributos e detalhes da métrica de contagem de erros de conectividade.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/connectivity_error_count
Definição O número de solicitações que não chegaram à rede do Google. Em casos normais, esse número é 0. Quando o número não é 0, ele pode indicar problemas de conectividade entre o aplicativo e a rede do Google.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • status da tentativa
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente necessárias para usar a métrica de contagem de erros de conectividade.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.38.0
Node.js 6.2.0 (operações ReadRows e ReadRow), 6.3.0 (outras operações)
C++ 2.41.0

Latências de bloqueio do cliente

A tabela a seguir mostra os atributos e detalhes da métrica de latências de bloqueio do cliente.

Atributo Descrição
Métrica completa bigtable.googleapis.com/client/client_blocking_latencies
Definição Latências introduzidas quando o cliente bloqueia o envio de mais solicitações ao servidor devido a muitas solicitações pendentes em uma operação em massa. Para as versões 2.21.0 e mais recentes, essa métrica também inclui as latências de solicitações enfileiradas em canais gRPC quando o cliente cria um canal.
Operações do Bigtable compatíveis
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuição
Dimensões disponíveis
  • ID do projeto
  • ID da instância
  • tabela
  • cluster
  • zona
  • ID do perfil do aplicativo
  • nome do método
  • nome do cliente

Suporte à biblioteca de cliente

A tabela a seguir mostra as versões mínimas da biblioteca de cliente Java necessárias para usar a métrica de latências de bloqueio do cliente.

Idioma Cliente Versão (ativação) Versão (ativada por padrão)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1

A seguir