Beschreibungen clientseitiger Messwerte

Clientseitige Messwerte sind für mehrere Bigtable-Clientbibliotheken verfügbar. Auf dieser Seite finden Sie eine detaillierte Beschreibung der einzelnen clientseitigen Messwerte.

Für Go, C++ und Node.js sind diese Messwerte in den unterstützten Versionen standardmäßig aktiviert. Bei den Java-Clientbibliotheken sind die Messwerte je nach Version der Clientbibliothek als optionales Feature oder standardmäßig verfügbar. Informationen zu den einzelnen Versionen finden Sie im Abschnitt „Unterstützung der Clientbibliothek“ der jeweiligen Messwertseite.

Informationen zum Einrichten und Konfigurieren clientseitiger Messwerte finden Sie unter Clientseitige Messwerte einrichten. Eine Übersicht finden Sie unter Übersicht über clientseitige Messwerte.

Messwerte werden in der Region des Bigtable-Clusters veröffentlicht, für die sie vorgesehen sind. Wenn Bigtable den Cluster für einen Messwert nicht auflösen kann, z. B. wenn ein Vorgang fehlschlägt, wird der Messwert in der globalen Region veröffentlicht und das Tag cluster hat den Wert unspecified.

Verwenden Sie clientseitige Messwerte in Verbindung mit serverseitigen Messwerten zum Debugging der Leistung. Eine umfassende Liste der serverseitigen und clientseitigen Messwerte in Bigtable finden Sie unter Messwerte.

Vorgangslatenzen

In der folgenden Tabelle sind die Attribute und Details der Messwertlatenzen für Vorgänge aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/operation_latencies
Definition Die gesamte End-to-End-Latenz in allen RPC-Versuchen, die mit einem Bigtable-Vorgang verknüpft sind. Dieser Messwert erfasst die Umlaufdaten eines Vorgangs vom Client zu Bigtable und zurück zum Client. Alle Wiederholungsversuche sind enthalten.

Bei ReadRows-Anfragen ist die Verarbeitungszeit der Anwendung für jede zurückgegebene Nachricht in den Vorgangslatenzen enthalten.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • endgültiger Vorgangsstatus
  • Streamingvorgang
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die Mindestversionen der Clientbibliothek aufgeführt, die für die Verwendung des Messwerts „Vorgangslatenzen“ erforderlich sind.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.40.0

Latenzen von Versuchen

In der folgenden Tabelle sind die Attribute und Details der Messwertlatenzen für Versuche aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/attempt_latencies
Definition Die Latenzen eines clientseitigen RPC-Versuchs.

Unter normalen Umständen ist dieser Wert mit operation_latencies identisch. Wenn der Client jedoch vorübergehende Fehler empfängt, dann ist operation_latencies die Summe aller attempt_latencies und der exponentiellen Verzögerungen.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • Versuchsstatus
  • Streamingvorgang
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Clientbibliothek für die Verwendung des Messwerts „Latenzen bei Versuchen“ aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.40.0

Anzahl der erneuten Versuche

In der folgenden Tabelle sind die Attribute und Details der Messwertwiederholungsanzahl aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/retry_count
Definition Ein Zähler, der die Anzahl der Versuche erfasst, die für den Abschluss eines Vorgangs benötigt wurden. Unter normalen Umständen ist dieser Wert leer.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ INT64
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • endgültiger Vorgangsstatus
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Clientbibliothek für die Verwendung des Messwerts für die Anzahl der Wiederholungsversuche aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.40.0

Latenzen durch Anwendungsblockierung

In der folgenden Tabelle sind die Attribute und Details der Messwert-Latenzen für das Blockieren von Anwendungen aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/application_blocking_latencies
Definition Die Zeitspanne zwischen dem Empfang der Antwort auf eine Anfrage durch den Client und dem Lesen der Antwort durch die Anwendung. Dieser Messwert ist am relevantesten für ReadRows-Anfragen. Die Start- und Stoppzeiten für diesen Messwert hängen davon ab, wie Sie die Leseanfrage senden. Weitere Informationen finden Sie unter Timer-Beispiele für Latenzen durch Anwendungsblockierung.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die Mindestversionen der Clientbibliothek aufgeführt, die für die Verwendung der Messwerte für die Latenz beim Blockieren von Anwendungen erforderlich sind.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.38.0
Node.js 6.3.0 (ReadRows-Vorgang)
C++ 2.41.0

Timer-Beispiele für Latenzen durch Anwendungsblockierung

ReadRows-Anfragen werden in der Regel auf eine von drei Arten gesendet: iterativ, asynchron oder als zukünftiger Aufruf. Die folgenden Beispiele zeigen die Start- und Stoppzeiten für die Latenzen durch Anwendungsblockierung für jeden Typ von ReadRows-Vorgang.

Iterativ

long totaLatency=0;
ServerStream<Row> stream = bigtableDataClient.readRows(query);

for (Row row : stream) {
   timer.start();
   // Do something with row
   timer.stop();
   totalLatency += timer.elapsed();
}

Asynchron

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

Zukünftiger Anruf

Die Latenzen durch Anwendungsblockierung sollten bei dieser Art von ReadRows-Anfrage ca. 0 (kein Timer) sein.

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

Latenzen der ersten Antwort

In der folgenden Tabelle sind die Attribute und Details der Messwert-Latenzen für die erste Antwort aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/first_response_latencies
Definition Latenzen ab dem Zeitpunkt, an dem ein Client eine Anfrage sendet, bis er die erste Zeile der Antwort empfängt.
Unterstützter Bigtable-Vorgang ReadRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • endgültiger Vorgangsstatus
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Clientbibliothek für die Verwendung des Messwerts „Latenzen der ersten Antwort“ aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.40.0

Serverlatenzen

In der folgenden Tabelle sind die Attribute und Details des Messwerts für Serverlatenzen aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/server_latencies
Definition Latenzen zwischen dem Zeitpunkt, an dem das Google-Frontend einen RPC empfängt, und dem Zeitpunkt, an dem das erste Byte der Antwort gesendet wird.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • Versuchsstatus
  • Streamingvorgang
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Clientbibliotheken für die Verwendung des Messwerts „Serverlatenzen“ aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.27.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.41.0

Anzahl der Verbindungsfehler

In der folgenden Tabelle sind die Attribute und Details des Messwerts „Anzahl der Verbindungsfehler“ aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/connectivity_error_count
Definition Die Anzahl der Anfragen, die das Google-Netzwerk nicht erreicht haben. Normalerweise ist dieser Wert 0. Wenn die Zahl nicht 0 ist, kann das auf Verbindungsprobleme zwischen der Anwendung und dem Google-Netzwerk hinweisen.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • Versuchsstatus
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Clientbibliothek für die Verwendung der Messwertanzahl für Verbindungsfehler aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1
Go 1.38.0
Node.js 6.2.0 (ReadRows- und ReadRow-Vorgänge), 6.3.0 (andere Vorgänge)
C++ 2.41.0

Client-Blockierungslatenzen

In der folgenden Tabelle sind die Attribute und Details der Messwert-Latenzen für Clientblockierung aufgeführt.

Attribut Beschreibung
Vollständiger Messwert bigtable.googleapis.com/client/client_blocking_latencies
Definition Latenzen, die auftreten, wenn der Client das Senden weiterer Anfragen an den Server blockiert, weil in einem Bulk-Vorgang zu viele Anfragen ausstehen. In Version 2.21.0 und höher umfasst dieser Messwert auch die Latenzen von Anfragen, die in gRPC-Channels in die Warteschlange gestellt werden, wenn der Client einen Channel erstellt.
Unterstützte Bigtable-Vorgänge
  • ReadRow
  • ReadRows
  • MutateRow
  • MutateRows
  • SampleRowKeys
  • CheckAndMutateRow
  • BulkReadRows
  • BulkMutateRows
Typ Verteilung
Verfügbare Dimensionen
  • Projekt-ID
  • Instanz-ID
  • table
  • Cluster
  • Zone
  • app_profile-ID
  • Methodenname
  • Clientname

Unterstützung von Clientbibliotheken

In der folgenden Tabelle sind die erforderlichen Mindestversionen der Java-Clientbibliothek für die Verwendung des Messwerts für die blockierenden Clientlatenzen aufgeführt.

Sprache Kunde Version (Aktivierung) Version (standardmäßig aktiviert)
Java java-bigtable 2.16.0 2.38.0
java-bigtable-hbase 2.6.4 2.14.1

Nächste Schritte