Statistiken zu Tabellengrößen

Spanner bietet die integrierte Tabelle SPANNER_SYS.TABLE_SIZES_STATS_1HOUR, in der die Größen der Tabellen und Indexe in Ihren Datenbanken aufgeführt sind. Die Tabellengröße wird in Byte angegeben. Tabellengrößen umfassen Datenversionen. Mit SPANNER_SYS.TABLE_SIZES_STATS_1HOUR können Sie die Tabellen- und Indexgrößen im Zeitverlauf im Blick behalten. Sie können auch die Größe Ihrer Indexe beim Erstellen/Löschen und bei Änderungen (wenn Sie weitere Zeilen in den Index einfügen oder ihm neue Spalten hinzufügen) überwachen. Außerdem können Sie sich die Größe der Änderungsstreamtabellen ansehen.

Der Datenbankspeicher kann mit dem Messwert „Gesamtspeicher der Datenbank“ überwacht werden. Mit SPANNER_SYS.TABLE_SIZES_STATS_1HOUR können Sie sich die Aufschlüsselung des Datenbankspeichers ansehen.

Verfügbarkeit

SPANNER_SYS-Daten sind nur über SQL-Schnittstellen verfügbar. Beispiel:

  • Spanner Studio-Seite einer Datenbank in der Google Cloud Console

  • Befehl gcloud spanner databases execute-sql

  • Mit der executeQuery API

Andere von Spanner bereitgestellte Methoden für einzelne Leseaufrufe unterstützen SPANNER_SYS nicht.

TABLE_SIZES_STATS_1HOUR

SPANNER_SYS.TABLE_SIZES_STATS_1HOUR enthält die Größen aller Tabellen in Ihrer Datenbank, sortiert nach interval_end. Die Intervalle basieren auf Uhrzeiten und enden auf eine Stunde. Intern erfasst Spanner alle fünf Minuten Daten von allen Servern und stellt die Daten kurz danach in der Tabelle TABLE_SIZES_STATS_1HOUR zur Verfügung. Die Daten werden dann pro Taktstunde gemittelt. Beispiel: Für 11:59:30 Uhr zeigt TABLE_SIZES_STATS_1HOUR die durchschnittlichen Tabellengrößen aus dem Intervall von 10:00:00 bis 10:59:59 Uhr an.

Tabellenschema

Spaltenname Typ Beschreibung
INTERVAL_END TIMESTAMP Ende des Zeitintervalls, in dem die Tabellengrößen erfasst wurden.
TABLE_NAME STRING Name der Tabelle oder des Index.
USED_BYTES FLOAT64 Tabellengröße in Byte.

Beispielabfragen

Dieser Abschnitt enthält mehrere Beispiel-SQL-Anweisungen, mit denen zusammengefasste Statistiken zu Tabellengrößen abgerufen werden. Sie können diese SQL-Anweisungen mit den Clientbibliotheken, dem gcloud Spanner oder der Google Cloud Console ausführen.

Die 4 größten Tabellen und Indexe für das neueste Intervall abfragen

Die folgende Abfrage gibt die vier größten Tabellen und Indexe für das letzte Intervall zurück:

    SELECT interval_end,
          table_name,
          used_bytes
    FROM spanner_sys.table_sizes_stats_1hour
    WHERE interval_end = (
          SELECT MAX(interval_end)
          FROM spanner_sys.table_sizes_stats_1hour)
    ORDER BY used_bytes DESC
    LIMIT 4;
  

Screenshot: Ausgabe der Abfrage
interval_end table_name used_bytes
2022-11-15 13:00:00-07:00 order_item 60495552
2022-11-15 13:00:00-07:00 orders 13350000
2022-11-15 13:00:00-07:00 item_inventory 2094549
2022-11-15 13:00:00-07:00 customer 870000

Trend der Abfragegröße für eine bestimmte Tabelle oder einen bestimmten Index in den letzten 24 Stunden

Die folgende Abfrage gibt die Größe der Tabelle in den letzten 24 Stunden zurück:

GoogleSQL

SELECT interval_end, used_bytes
  FROM spanner_sys.table_sizes_stats_1hour
WHERE interval_end > TIMESTAMP_ADD(CURRENT_TIMESTAMP(), INTERVAL -24 HOUR)
  AND table_name = table_name
ORDER BY interval_end DESC;

Wobei:

  • table_name muss eine vorhandene Tabelle oder ein vorhandener Index in der Datenbank sein.
Screenshot: Ausgabe der Abfrage
interval_end used_bytes
2022-11-15 13:00:00-07:00 13350000
2022-11-15 12:00:00-07:00 13350000
2022-11-15 11:00:00-07:00 13350000
2022-11-15 10:00:00-07:00 13350000
2022-11-15 09:00:00-07:00 13350000
2022-11-15 08:00:00-07:00 12350000
2022-11-15 07:00:00-07:00 12350000
2022-11-15 06:00:00-07:00 12350000
2022-11-15 05:00:00-07:00 11350000
2022-11-15 04:00:00-07:00 11350000
2022-11-15 03:00:00-07:00 11350000
2022-11-15 02:00:00-07:00 11350000
2022-11-15 01:00:00-07:00 11350000
2022-11-15 00:00:00-07:00 10350000
2022-11-14 23:00:00-07:00 10350000
2022-11-14 22:00:00-07:00 10350000
2022-11-14 21:00:00-07:00 10350000
2022-11-14 20:00:00-07:00 10350000
2022-11-14 19:00:00-07:00 10350000
2022-11-14 18:00:00-07:00 10350000
2022-11-14 17:00:00-07:00 10350000
2022-11-14 16:00:00-07:00 10350000
2022-11-14 15:00:00-07:00 10350000
2022-11-14 14:00:00-07:00 10350000
2022-11-14 13:00:00-07:00 10350000

Datenaufbewahrung

Spanner speichert mindestens Daten für SPANNER_SYS.TABLE_SIZES_STATS_1HOUR für Intervalle, die die letzten 30 Tage abdecken.

Nächste Schritte