Tabellenstatistiken

Bigtable stellt Tabellenstatistiken – Metadaten zu einer Tabelle – zur Verfügung, die Ihnen zusammenfassende Informationen über die Tabelle liefern, z. B. die Anzahl der Zeilen oder die durchschnittliche Anzahl von Zellen pro Spalte.

In diesem Dokument werden Tabellenstatistiken beschrieben und erklärt, wie sie mit der Google Cloud CLI abgerufen werden. 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 hilfreich sein, wenn Sie Probleme mit der Leistung oder dem Speicherplatz beheben oder die Quelle der Speicherkosten ermitteln möchten. Sie können Ihnen auch dabei helfen zu bestimmen, ob Sie mehr Daten speichern, als Sie benötigen.

Erwartete Precision

Wenn Sie Tabellenstatistiken für eine Tabelle abrufen, handelt es sich um ungefähre Daten. Die Tabellenstatistiken spiegeln den Status Ihrer Tabelle in einem der Cluster Ihrer Instanz seit der letzten Verdichtung wider.

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

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.

Feld für Tabellenstatistiken API-Name Beschreibung
Zeilenanzahl row_count Die Anzahl der Zeilen in der Tabelle Weitere Informationen finden Sie unter Zeilenanzahl.
Durchschnittliche Anzahl von Spalten pro Zeile average_columns_per_row Die durchschnittliche Anzahl der Spalten in jeder Zeile für die gesamte Tabelle. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl von 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.

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

Feld „Statistik der Spaltenfamilie“ API-Name Beschreibung
Durchschnittliche Anzahl von Spalten pro Zeile average_columns_per_row Die durchschnittliche Anzahl von Spalten pro Zeile in der Spaltenfamilie. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl von 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 haben. Weitere Informationen und ein Beispiel finden Sie unter Durchschnittliche Anzahl von 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 von 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.

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

Zeilenschlüssel Spaltenfamilie Familie-A Spaltenfamilie Familie-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 also 2.5.

Diese Tabellenstatistik gibt Ihnen eine allgemeine 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.

Je nach Schemadesign und 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 diese Zahl höher als erwartet ist, prüfen Sie Ihre Regeln für die automatische Speicherbereinigung, um festzustellen, ob mehr Zellen als erforderlich aufbewahrt 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äre. 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 verstehen. 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 von 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.

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

Zeilenschlüssel Spaltenfamilie Familie-A Spaltenfamilie Familie-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 in der Tabelle insgesamt fünf Spalten. Wenn die Zellen durch drei Zeilen geteilt werden, beträgt die durchschnittliche Anzahl der Zellen pro Spalte für family-A 1.67 (auf zwei Dezimalstellen gerundet).

Die Spaltenfamilie „family-B“ hat in der Tabelle insgesamt drei Spalten. 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, dividiert 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 der 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 von Byte, die zum Lesen aller Daten in der Spaltenfamilie zum Zeitpunkt der Rückgabe der Tabellenstatistiken erforderlich sind.

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