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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |
|
| Typ | INT64 |
| Verfügbare Dimensionen |
|
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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |
|
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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |
|
| Typ | Verteilung |
| Verfügbare Dimensionen |
|
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 |