Descrizioni delle metriche lato client

Le metriche lato client sono disponibili quando utilizzi la libreria client di Bigtable per Java o il client Bigtable HBase per Java. Questa pagina fornisce una descrizione dettagliata di ogni metrica lato client.

Per informazioni su come impostare e configurare le metriche lato client, consulta Impostare le metriche lato client. Per una panoramica, consulta la Panoramica delle metriche lato client.

Le metriche vengono pubblicate nell'area del cluster Bigtable per cui sono. Se Bigtable non è in grado di 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 in combinazione con le metriche lato server per il debug delle prestazioni. Per un elenco completo delle metriche di Bigtable lato server e lato client, vedi Metriche.

Latenze delle operazioni

Attributo Description
Metrica completa bigtable.googleapis.com/client/operation_latencies
Definizione La latenza end-to-end totale in tutti i tentativi RPC associati a un'operazione Bigtable. Questa metrica misura il round triplo di un'operazione dal client a Bigtable e di nuovo al client e include tutti i nuovi tentativi.

Per le richieste ReadRows, le latenze delle operazioni includono il tempo di elaborazione dell'applicazione per ogni messaggio restituito.
Operazioni Bigtable supportate
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato finale dell'operazione
  • operazione di streaming
  • nome cliente

Latenze dei tentativi

Attributo Description
Metrica completa bigtable.googleapis.com/client/attempt_latencies
Definizione Latenze di un tentativo RPC client.

In circostanze normali, questo valore è identico a operation_latencies. Tuttavia, se il client riceve errori temporanei, operation_latencies sarà la somma di tutti i attempt_latencies e dei ritardi esponenziali.
Operazioni Bigtable supportate
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato tentativo
  • operazione di streaming
  • nome cliente

Conteggio nuovi tentativi

Attributo Description
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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato finale dell'operazione
  • nome cliente

Latenze di blocco delle applicazioni

Attributo Description
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. I tempi di inizio e di fine di questa metrica dipendono dal modo in cui invii la richiesta di lettura. Per maggiori dettagli, consulta Esempi di timer delle latenze di blocco delle applicazioni.
Operazioni Bigtable supportate
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • nome cliente

Esempi di timer per la latenza di blocco delle applicazioni

In genere, le richieste ReadRows vengono inviate in tre modi: in modo iterativo, in modo asincrono o come chiamata futura. I seguenti esempi mostrano i tempi di avvio e di arresto per le latenze di blocco dell'applicazione 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 dell'applicazione devono essere approssimativamente pari a 0 (nessun timer) per questo tipo di richiesta ReadRows.

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

Latenze prima risposta

Attributo Description
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.
Operazioni Bigtable supportate ReadRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato finale dell'operazione
  • nome cliente

Latenze server

Attributo Description
Metrica completa bigtable.googleapis.com/client/server_latencies
Definizione Latenze tra il momento in cui il frontend di Google riceve una RPC e l'invio del primo byte della risposta.
Operazioni Bigtable supportate
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato tentativo
  • operazione di streaming
  • nome cliente

Conteggio errori di connettività

Attributo Description
Metrica completa bigtable.googleapis.com/client/connectivity_error_count
Definizione Il numero di richieste che non sono riuscite a raggiungere la rete Google. In casi normali, questo numero è 0. Se il numero è diverso da 0, potrebbe indicare problemi di connettività tra l'applicazione e la rete Google.
Operazioni Bigtable supportate
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • stato tentativo
  • nome cliente

Latenze di blocco client

Attributo Description
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 un numero eccessivo di richieste in attesa in un'operazione collettiva. Per la versione 2.21.0 e successive, questa metrica include anche le latenze delle richieste in coda sui canali gRPC.
Operazioni Bigtable supportate
  • 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 Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome metodo
  • nome cliente

Passaggi successivi