Tabellenstatistiken

Cloud Bigtable bietet Tabellenstatistiken – Metadaten zu einer Tabelle –, die Ihnen zusammenfassende Informationen zur Tabelle liefern, z. B. die Anzahl der Zeilen oder die durchschnittliche Anzahl der Zellen pro Spalte.

In diesem Dokument werden Tabellenstatistiken beschrieben und es wird erläutert, wie Sie diese über die Google Cloud CLI abrufen. Bevor Sie diese Seite lesen, sollten Sie das Bigtable-Speichermodell verstehen und mit den Best Practices für Schemadesign und der Automatische Speicherbereinigung vertraut sein

Tabellenstatistiken ermöglichen Beobachtbarkeit in einer Bigtable-Tabelle. Sie können nützlich sein, wenn Sie Probleme mit der Leistung oder dem Speicher beheben oder die Quelle der Speicherkosten ermitteln möchten. Sie können damit auch ermitteln, ob Sie mehr Daten speichern, als Sie benötigen.

Erwartete Genauigkeit

Wenn Sie Tabellenstatistiken für eine Tabelle abrufen, handelt es sich um Näherungswerte. Die Tabellenstatistiken spiegeln den Status Ihrer Tabelle in einem der Cluster Ihrer Instanz zum Zeitpunkt der letzten Verdichtung wider.

Ein vollständiger Satz von Tabellenstatistiken ist erst nach der ersten Verdichtung verfügbar. Diese erfolgt in der Regel etwa eine Woche nach dem Erstellen der Tabelle. Die Tabellenstatistiken beziehen sich auf die letzte Verdichtung, die bis zu einer Woche zurückliegt.

Tabellenstatistikfelder

Bei einer Anfrage für die Tabellenstatistiken einer Tabelle werden die folgenden Felder zurückgegeben. Details und Beispiele finden Sie im nächsten Abschnitt.

Tabellenstatistikfeld API-Name Beschreibung
Zeilenanzahl row_count Die Anzahl der Zeilen in der Tabelle Weitere Informationen finden Sie unter Zeilenanzahl.
Durchschnittliche Anzahl der Spalten pro Zeile average_columns_per_row Die durchschnittliche Anzahl der Spalten in jeder Zeile der gesamten Tabelle. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl der Spalten pro Zeile.
Durchschnittliche Anzahl von Zellen pro Spalte average_cells_per_column Die durchschnittliche Anzahl der Zellen, die in allen Spalten in allen Zeilen gespeichert sind. Weitere Informationen finden Sie unter Durchschnittliche Anzahl von Zellen pro Spalte.
Logische Daten in Byte logical_data_bytes Der Platz, den die Tabelle einnimmt. Weitere Informationen finden Sie unter Logische Daten in Byte.

Die Tabellenstatistiken umfassen auch die folgenden Felder für jede Spaltenfamilie in der Tabelle.

Feld „Statistik der Spaltenfamilie“ API-Name Beschreibung
Durchschnittliche Anzahl der Spalten pro Zeile average_columns_per_row Die durchschnittliche Anzahl der Spalten pro Zeile in der Spaltenfamilie. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl der Spalten pro Zeile.
Durchschnittliche Anzahl von Zellen pro Spalte average_cells_per_column Die Anzahl der Zellen in jeder Spalte, gemittelt über alle Zeilen, die Spalten in der Spaltenfamilie enthalten. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl der Zellen pro Spalte.
Logische Daten in Byte logical_data_bytes Der Speicherplatz, den die Spaltenfamilie einnimmt. Weitere Informationen finden Sie unter Logische Daten in Byte.

Details zum Feld „Tabellenstatistiken“

Zeilenanzahl

Die Zeilenanzahl entspricht der Anzahl der Zeilen in der Tabelle. Jede Zeile wird durch einen Zeilenschlüssel identifiziert.

Durchschnittliche Anzahl der Spalten pro Zeile

Um die durchschnittliche Anzahl der Spalten pro Zeile in einer Tabelle zu ermitteln, zählt Bigtable die Anzahl der Spalten in der gesamten Tabelle und dividiert diesen Wert durch die Anzahl der Zeilen in der Tabelle.

Betrachten Sie als Beispiel die folgende Tabelle. Die erste Zeile hat drei Spalten, die zweite zwei Spalten.

Zeilenschlüssel Spaltenfamilie Familie-A Spaltenfamilienfamilie B
Zeilenschlüssel 1 family-A:qualifier-W family-A:qualifier-X family-B:qualifier-Y
Zeilenschlüssel 2 family-A:qualifier-W family-B:qualifier-Z

Die Tabelle hat fünf Spalten und zwei Zeilen. Die durchschnittliche Anzahl der Spalten pro Zeile beträgt daher 2.5.

Diese Tabellenstatistik gibt Ihnen eine Vorstellung davon, ob Ihre Tabelle hoch und schmal (wenige Spalten pro Zeile) oder kurz und breit (viele Spalten in jeder Zeile) ist.

Durchschnittliche Anzahl von Zellen pro Spalte

Um die durchschnittliche Anzahl der Zellen pro Spalte in einer Tabelle zu ermitteln, dividiert Bigtable die Gesamtzahl der in der Tabelle gespeicherten Zellen durch die Anzahl der Spalten in der Tabelle.

Abhängig von Ihrem Schemadesign und Ihren Richtlinien für die automatische Speicherbereinigung kann Ihre Tabelle mehrere Zellen in einer Spalte oder nur eine enthalten. Die Anzahl der Zellen, die Sie speichern können, hängt von den Größenbeschränkungen auf der Seite „Kontingente und Limits“ unter Größe von Daten in Tabellen ab.

Wenn Sie feststellen, dass diese Zahl höher als erwartet ist, prüfen Sie die Regeln für die automatische Speicherbereinigung, um festzustellen, ob mehr Zellen als erforderlich beibehalten werden. Sie können auch fragen, ob Ihr Schema und Ihre Schreibmuster angepasst werden sollen.

Logische Daten in Byte (Tabelle)

Dieser Wert stellt die ungefähre Anzahl von Byte dar, die zum Lesen der gesamten Tabelle erforderlich wären. Diese Tabellenstatistik gibt Ihnen eine Vorstellung davon, wie viele Bytes in der Tabelle gespeichert sind. Wenn Sie die logischen Daten in Byte kennen, können Sie die Auswirkungen der Komprimierung auf die Tabelle besser nachvollziehen. Wenn beispielsweise die in Cloud Monitoring gemeldete Tabellengröße mit den logischen Daten für die Tabelle übereinstimmt oder größer als diese sind, speichern Sie die Daten möglicherweise in einem Format, das nicht so einfach zu komprimieren ist.

Details zum Feld für Spaltenfamilienstatistiken

Die Tabellenstatistiken für eine Tabelle umfassen die folgenden Felder für jede Spaltenfamilie in der Tabelle.

Durchschnittliche Anzahl der Spalten pro Zeile

Diese Zahl wird berechnet, indem die Anzahl der Spalten in der Spaltenfamilie durch die Anzahl der Zeilen in der Tabelle geteilt wird.

Betrachten Sie als Beispiel die folgende Tabelle. Die Tabelle hat drei Zeilen mit Spalten in den Spaltenfamilien family-A und family-B.

Zeilenschlüssel Spaltenfamilie Familie-A Spaltenfamilienfamilie B
Zeilenschlüssel 1 family-A:qualifier-W family-A:qualifier-X family-B:qualifier-Y
Zeilenschlüssel 2 family-A:qualifier-W
Zeilenschlüssel 3 family-A:qualifier-W family-A:qualifier-X family-B:qualifier-Y family-B:qualifier-Z

Die Spaltenfamilie family-A hat insgesamt fünf Spalten in der Tabelle. Durch drei Zeilen geteilt, bedeutet dies, dass die durchschnittliche Anzahl von Zellen pro Spalte für family-A bei 1.67 liegt (hier auf zwei Dezimalstellen gerundet).

Die Spaltenfamilie family-B hat insgesamt drei Spalten in der Tabelle. Die durchschnittliche Anzahl der Spalten pro Zeile für family-A beträgt 1, geteilt durch drei Zeilen.

Durchschnittliche Anzahl von Zellen pro Spalte

Um die durchschnittliche Anzahl von Zellen pro Spalte in einer Spaltenfamilie zu bestimmen, teilt Bigtable die Anzahl aller Zellen in der Spaltenfamilie in allen Zeilen der Tabelle durch die Anzahl der Zeilen in der Tabelle.

Betrachten Sie beispielsweise die folgenden Zeilen in der Spaltenfamilie family-D.

Zeilenschlüssel Spaltenfamilie Familie-D
Zeilenschlüssel 1 Familie-D:Qualifier-W (3 Zellen) Familie-D:Qualifier-X (1 Zelle)
Zeilenschlüssel 2 Familie-D:Qualifier-X (10 Zellen)
Zeilenschlüssel 3 Familie-D:Qualifier-W (7 Zellen) Familie-D:Qualifier-Y (6 Zellen)

Die Anzahl der Zellen in einer Spaltenfamilie beträgt 3 + 1 + 10 + 7 + 6 = 27. Dieser Wert geteilt durch 3 (die Anzahl der Zeilen) bedeutet, dass die Spaltenfamilie family-D einen Durchschnitt von 9 Zellen pro Spalte hat.

Logische Daten in Byte (Spaltenfamilie)

Die logischen Daten in Byte geben den Platz wieder, den die Spaltenfamilie einnimmt. Dieser Wert entspricht ungefähr der Anzahl der Byte, die Sie zum Lesen aller Daten in der Spaltenfamilie benötigen, als die Tabellenstatistiken zurückgegeben wurden.

Beispiel mit der gcloud CLI

Verwenden Sie den Befehl bigtable instances table describe, um Tabellenstatistiken für eine Tabelle mit dem Namen sample-table abzurufen:

gcloud bigtable instances tables describe TABLE_ID \
    --instance=INSTANCE_ID --view stats

Ersetzen Sie Folgendes:

  • TABLE_ID: Die permanente Kennzeichnung der Tabelle
  • INSTANCE_ID: Die permanente Kennzeichnung der Instanz

Die Ausgabe sieht in etwa so aus:

  columnFamilies:
    my-family:
     stats:
       averageCellsPerColumn: 12.34
       averageColumnsPerRow: 56.78
       logicalDataBytes: 314159
  name: projects/my-project/instances/INSTANCE_ID/tables/TABLE_ID
  stats:
    averageCellsPerColumn: 12.34
    averageColumnsPerRow: 56.78
    logicalDataBytes: 314159
    rowCount: 271828

Nächste Schritte