Descripciones de las métricas del lado del cliente

Las métricas del lado del cliente están disponibles cuando usas la biblioteca de cliente de Bigtable para Java o el cliente de HBase de Bigtable para Java. En esta página se ofrece una descripción detallada de cada métrica del lado del cliente.

Para saber cómo configurar métricas del lado del cliente, consulte el artículo Configurar métricas del lado del cliente. Para obtener una descripción general, consulta el artículo Descripción general de las métricas del lado del cliente.

Las métricas se publican en la región del clúster de Bigtable al que corresponden. Si Bigtable no puede resolver el clúster de una métrica (por ejemplo, cuando falla una operación), la métrica se publica en la región global y la etiqueta cluster tiene el valor unspecified.

Usa métricas del lado del cliente junto con métricas del lado del servidor para depurar el rendimiento. Para ver una lista completa de las métricas del lado del servidor y del lado del cliente de Bigtable, consulte Métricas.

Latencias de operaciones

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/operation_latencies
Definición La latencia total de extremo a extremo de todos los intentos de RPC asociados a una operación de Bigtable. Esta métrica mide el tiempo de ida y vuelta de una operación desde el cliente a Bigtable y de vuelta al cliente, e incluye todos los reintentos.

En el caso de las solicitudes ReadRows, las latencias de las operaciones incluyen el tiempo de procesamiento de la aplicación de cada mensaje devuelto.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado final de la operación
  • operación de streaming
  • Nombre del cliente

Latencias de intentos

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/attempt_latencies
Definición Las latencias de un intento de RPC de cliente.

En circunstancias normales, este valor es idéntico a operation_latencies. Sin embargo, si el cliente recibe errores transitorios, operation_latencies es la suma de todos los attempt_latencies y los retrasos exponenciales.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado del intento
  • operación de streaming
  • Nombre del cliente

Número de reintentos

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/retry_count
Definición Un contador que registra el número de intentos que ha necesitado una operación para completarse. En circunstancias normales, este valor está vacío.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo INT64
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado final de la operación
  • Nombre del cliente

Latencias de bloqueo de aplicaciones

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/application_blocking_latencies
Definición El tiempo que transcurre desde que el cliente recibe la respuesta a una solicitud hasta que la aplicación lee la respuesta. Esta métrica es más relevante para las solicitudes ReadRows. Las horas de inicio y de finalización de esta métrica dependen de la forma en que envíes la solicitud de lectura. Consulta los ejemplos del temporizador de latencias de bloqueo de aplicaciones para obtener más información.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • Nombre del cliente

Ejemplos de temporizador de latencias de bloqueo de aplicaciones

Las solicitudes ReadRows suelen enviarse de tres formas: de forma iterativa, asíncrona o como una llamada futura. En los siguientes ejemplos se muestran las horas de inicio y de finalización de las latencias de bloqueo de aplicaciones para cada tipo de operación 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();
}

Asíncrono

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

Llamada futura

Las latencias de bloqueo de aplicaciones deben ser aproximadamente 0 (sin temporizador) para este tipo de solicitud ReadRows.

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

Latencias de primera respuesta

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/first_response_latencies
Definición Latencias desde que un cliente envía una solicitud y recibe la primera fila de la respuesta.
Operación de Bigtable admitida ReadRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado final de la operación
  • Nombre del cliente

Latencias del servidor

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/server_latencies
Definición Latencias entre el momento en que el frontend de Google recibe una llamada a procedimiento remoto y el momento en que envía el primer byte de la respuesta.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado del intento
  • operación de streaming
  • Nombre del cliente

Número de errores de conectividad

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/connectivity_error_count
Definición Número de solicitudes que no han llegado a la red de Google. En casos normales, este número es 0. Si el número no es 0, puede indicar problemas de conectividad entre la aplicación y la red de Google.
Operaciones de Bigtable admitidas
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • estado del intento
  • Nombre del cliente

Latencias de bloqueo de clientes

Atributo Descripción
Métrica completa bigtable.googleapis.com/client/client_blocking_latencies
Definición Latencias introducidas cuando el cliente bloquea el envío de más solicitudes al servidor debido a que hay demasiadas solicitudes pendientes en una operación masiva. En las versiones 2.21.0 y posteriores, esta métrica también incluye las latencias de las solicitudes en cola en los canales gRPC.
Operaciones de Bigtable admitidas
  • 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
Tipo Distribución
Dimensiones disponibles
  • ID de proyecto
  • ID de instancia
  • tabla
  • clúster
  • zona
  • ID de perfil de aplicación
  • nombre del método
  • Nombre del cliente

Siguientes pasos