Descrizioni delle metriche lato client

Le metriche lato client sono disponibili per più librerie client Bigtable. Questa pagina fornisce una descrizione dettagliata di ogni metrica lato client.

Per Go, C++ e Node.js, queste metriche sono attive per impostazione predefinita nelle versioni supportate. Per le librerie client Java, le metriche sono disponibili come funzionalità attivabile o per impostazione predefinita, a seconda della versione della libreria client. Per informazioni sulle versioni specifiche, consulta la sezione "Supporto delle librerie client" di ogni metrica.

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

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato finale dell'operazione
  • operazione di streaming
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica delle latenze delle operazioni.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.27.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.40.0

Latenze dei tentativi

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato del tentativo
  • operazione di streaming
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime delle librerie client richieste per utilizzare la metrica Latenze dei tentativi.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.27.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.40.0

Conteggio tentativi

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo INT64
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato finale dell'operazione
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica Conteggio tentativi.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.27.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.40.0

Latenze di blocco delle applicazioni

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica Latenze di blocco dell'applicazione.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.38.0
Node.js 6.3.0 (operazione ReadRows)
C++ 2.41.0

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

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato finale dell'operazione
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica Latenze della prima risposta.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.27.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.40.0

Latenze del server

La tabella seguente mostra gli attributi e i dettagli della metrica 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato del tentativo
  • operazione di streaming
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica Latenze del server.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.27.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.41.0

Conteggio degli errori di connettività

La seguente tabella mostra gli attributi e i dettagli della metrica del 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • stato del tentativo
  • nome cliente

Supporto della libreria client

La tabella seguente mostra le versioni minime della libreria client richieste per utilizzare la metrica Conteggio errori di connettività.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Vai 1.38.0
Node.js 6.2.0 (operazioni ReadRows e ReadRow), 6.3.0 (altre operazioni)
C++ 2.41.0

Latenze di blocco del client

La tabella seguente mostra gli attributi e i dettagli della metrica Latenze di blocco 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
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Tipo Distribuzione
Dimensioni disponibili
  • ID progetto
  • ID istanza
  • tabella
  • cluster
  • zona
  • ID profilo app
  • nome del metodo
  • nome cliente

Supporto della libreria client

La seguente tabella mostra le versioni minime della libreria client Java richieste per utilizzare la metrica Latenze di blocco del client.

Lingua Client Versione (attivazione) Versione (abilitata per impostazione predefinita)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1

Passaggi successivi