Descrizioni delle metriche lato client
Le metriche lato client sono disponibili quando utilizzi la libreria client Bigtable per Java o il client Bigtable HBase per Java. Questa pagina fornisce una descrizione dettagliata di ogni metrica lato client.
Per scoprire come configurare le metriche lato client, consulta Configurare le metriche lato client. Per una panoramica, consulta Panoramica delle metriche lato client.
Le metriche vengono pubblicate nella regione del cluster Bigtable a cui
si riferiscono. Se Bigtable non riesce a risolvere il cluster per una metrica,
ad esempio quando un'operazione non va a buon fine, la metrica viene pubblicata nella regione globale
e il tag cluster ha il valore unspecified.
Utilizza le metriche lato client insieme a quelle lato server per il debug delle prestazioni. Per un elenco completo delle metriche lato server e lato client di Bigtable, consulta Metriche.
Latenze delle operazioni
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/operation_latencies |
| Definizione | La latenza end-to-end totale tra tutti i tentativi RPC associati a
un'operazione Bigtable. Questa metrica misura il round trip di un'operazione dal client a Bigtable e di nuovo al client e include tutti i tentativi. Per le richieste ReadRows, le latenze delle operazioni includono
il tempo di elaborazione dell'applicazione per ogni messaggio restituito. |
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Latenze dei tentativi
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/attempt_latencies |
| Definizione | Le latenze di un tentativo RPC del client. In circostanze normali, questo valore è identico a operation_latencies. Se il client riceve errori temporanei, tuttavia, operation_latencies è la somma di tutti i valori di attempt_latencies e dei ritardi esponenziali. |
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Conteggio tentativi
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/retry_count |
| Definizione | Un contatore che registra il numero di tentativi necessari per completare un'operazione. In circostanze normali, questo valore è vuoto. |
| Operazioni Bigtable supportate |
|
| Tipo | INT64 |
| Dimensioni disponibili |
|
Latenze di blocco delle applicazioni
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/application_blocking_latencies |
| Definizione | Il tempo che intercorre tra il momento in cui il client riceve la risposta a una
richiesta e il momento in cui l'applicazione legge la risposta. Questa metrica è più
pertinente per le richieste ReadRows. Gli orari di inizio e fine
per questa metrica dipendono dal modo in cui invii la richiesta di lettura. Per maggiori dettagli, consulta
Esempi di timer di latenza di blocco delle applicazioni.
|
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Esempi di timer di latenza del blocco delle applicazioni
Le richieste ReadRows vengono in genere inviate in tre modi: in modo iterativo,
asincrono o come chiamata futura. Gli esempi seguenti mostrano gli orari di inizio e fine delle latenze di blocco delle applicazioni per ogni tipo di operazione 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();
}
Asincrona
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() {
}
});
Chiamata futura
Le latenze di blocco delle applicazioni devono essere pari a circa 0 (nessun timer) per
questo tipo di richiesta ReadRows.
List<Row> rows = bigtableDataClient.readRowsCallable().all().call(query);
Latenze della prima risposta
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/first_response_latencies |
| Definizione | Latenze dal momento in cui un client invia una richiesta e riceve la prima riga della risposta. |
| Operazione Bigtable supportata | ReadRows |
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Latenze del server
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/server_latencies |
| Definizione | Latenze tra il momento in cui il frontend di Google riceve una RPC e il momento in cui invia il primo byte della risposta. |
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Conteggio degli errori di connettività
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/connectivity_error_count |
| Definizione | Il numero di richieste che non sono riuscite a raggiungere la rete di Google. Nei casi normali, questo numero è 0. Quando il numero non è 0, può indicare problemi di connettività tra l'applicazione e la rete Google. |
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|
Latenze di blocco del client
| Attributo | Descrizione |
|---|---|
| Metrica completa | bigtable.googleapis.com/client/client_blocking_latencies |
| Definizione | Latenze introdotte quando il client blocca l'invio di ulteriori richieste al server a causa di troppe richieste in attesa in un'operazione bulk. Per le versioni 2.21.0 e successive, questa metrica include anche le latenze delle richieste accodate sui canali gRPC quando il client crea un canale. |
| Operazioni Bigtable supportate |
|
| Tipo | Distribuzione |
| Dimensioni disponibili |
|