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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|
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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|
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 |
|
Tipo | INT64 |
Dimensiones disponibles |
|
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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|
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 |
|
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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|
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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|
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 |
|
Tipo | Distribución |
Dimensiones disponibles |
|