In diesem Dokument wird beschrieben, wie Sie das Hotspot-Statistik-Dashboard verwenden, um Hotspots in Ihrer Spanner-Datenbank zu erkennen.
Hotspot-Statistiken – Übersicht
Hotspots verursachen Latenz in Ihrer Spanner-Datenbank. Mit dem Dashboard für Hotspot-Statistiken können Sie die von Hotspots betroffenen Splits erkennen. So können Sie feststellen, ob Hotspots Latenz verursachen, und das Problem beheben:
- Öffnen Sie das Dashboard.
- Prüfen Sie, ob Hotspots Ihr Eingreifen erfordern.
- Problematische Hot Splits identifizieren.
Hotspot-Statistiken sind in Konfigurationen für eine einzelne Region, mehrere Regionen und Dual-Regionen verfügbar.
Preise
Für Hotspot-Statistiken fallen keine zusätzlichen Kosten an.
Datenaufbewahrung
Die Richtlinien zur Datenaufbewahrung für die Diagramme mit Hotspot-Statistiken und die Tabelle mit den Top-N-Splits basieren auf den zugrunde liegenden SPANNER_SYS.SPLIT_STATS_TOP_*-Tabellen. Spezifische Aufbewahrungsrichtlinien finden Sie unter Datenaufbewahrung für Hot-Split-Statistiken.
Erforderliche Rollen
Je nachdem, ob Sie ein IAM-Nutzer oder ein Nutzer mit detaillierter Zugriffssteuerung sind, benötigen Sie möglicherweise unterschiedliche IAM-Rollen und -Berechtigungen.
IAM-Nutzer
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für die Instanz zuzuweisen, damit Sie die nötigen Berechtigungen zum Aufrufen der Seite Hotspot-Statistiken haben:
-
Alle:
- Cloud Spanner-Betrachter (
roles/spanner.viewer) - Cloud Spanner-Datenbank-Leser (
roles/spanner.databaseReader)
- Cloud Spanner-Betrachter (
Die folgenden Berechtigungen in der Rolle Cloud Spanner-Datenbankleser (
roles/spanner.databaseReader) sind erforderlich, um die Seite Hotspot-Statistiken aufzurufen:
spanner.databases.beginReadOnlyTransactionspanner.databases.selectspanner.sessions.create
Nutzer mit detaillierter Zugriffssteuerung
Wenn Sie die detaillierte Zugriffssteuerung verwenden, müssen Sie Folgendes tun:
- Sie haben die Rolle Cloud Spanner-Betrachter (
roles/spanner.viewer). - Sie haben detaillierte Zugriffssteuerungsberechtigungen und Ihnen wurde die Systemrolle
spanner_sys_readeroder eine ihrer Mitgliedsrollen zugewiesen. - Wählen Sie auf der Seite Übersicht der Datenbank die Rolle
spanner_sys_readeroder eine Mitgliedsrolle als aktuelle Systemrolle aus.
Weitere Informationen finden Sie unter Detaillierte Zugriffssteuerung – Übersicht und Systemrollen für die detaillierte Zugriffssteuerung.
Dashboard „Hotspot-Statistiken“ öffnen
Im Dashboard Hotspot-Statistiken wird der Prozentsatz der CPU-Nutzung des Spitzen-Splits angezeigt. Dieser Messwert ist ein abstrakter Prozentsatz zwischen 0 und 100, der den Anteil der CPU-Nutzung durch Zugriffe auf die Zeilen innerhalb eines Splits angibt.
So rufen Sie das Dashboard Hotspot-Statistiken für eine Datenbank auf:
Öffnen Sie in der Google Cloud Console die Seite Spanner.
Wählen Sie eine Instanz aus der Liste aus.
Klicken Sie im Navigationsmenü auf den Tab Hotspot-Statistiken.
Wählen Sie im Feld Datenbank eine Datenbank aus der Liste aus. Das Dashboard zeigt den CPU-Nutzungswert des Spitzen-Splits für die Datenbank an.
Das Dashboard enthält die folgenden Elemente:
- CPU-Nutzungswert des Spitzen-Splits: Ein höherer CPU-Nutzungswert (z. B. nahe 100) weist darauf hin, dass der Split stark genutzt wird und sehr wahrscheinlich ein Heißlaufen auf dem Server verursacht, verglichen mit niedrigeren Werten.
- Datenbankfeld: Filtert die Informationen zu Hot Splits für eine bestimmte Datenbank oder für alle Datenbanken.
- Zeitraumfilter: Filtert die CPU-Auslastung der Spitzen-Splits in Schritten von 1 Minute bis zu insgesamt 6 Stunden.
- Tabelle der n Splits mit den höchsten CPU-Nutzungswerten: Zeigt die Liste der Splits mit den höchsten CPU-Nutzungswerten an, sortiert nach CPU-Nutzungswerten der Splits.

Daten in der Tabelle „Top-N-Splits“ verstehen:
Die Tabelle Top-N-Splits enthält Daten aus den zugrunde liegenden SPANNER_SYS.SPLIT_STATS_TOP_*-Tabellen basierend auf dem ausgewählten Zeitraum. Weitere Informationen finden Sie unter Datenaufbewahrung für Hot-Split-Statistiken.
Zeilen aus 10MINUTE- oder HOUR-Tabellen interpretieren:
Zeilen aus SPANNER_SYS.SPLIT_STATS_TOP_10MINUTE oder SPANNER_SYS.SPLIT_STATS_TOP_HOUR stellen aggregierte Daten für die jeweiligen Intervalle dar. Wie unter Tabellenereignisaggregation beschrieben, ist der CPU_USAGE_SCORE in diesen Zeilen der maximale Wert, der in einem zugrunde liegenden 1-minütigen Unterintervall beobachtet wurde, und UNSPLITTABLE_REASONS ist eine Vereinigung von Gründen.
Feststellen, ob bei Hotspots Maßnahmen erforderlich sind
Wenn Sie in der Grafik einen Anstieg oder eine Erhöhung sehen, die der Gesamtlatenz und einem dauerhaft hohen CPU-Nutzungswert des Spitzen-Splits entspricht, müssen Sie möglicherweise weitere Untersuchungen durchführen.
Sehen Sie sich die Grafik an, um diese Fragen zu untersuchen:
Bei welcher Datenbank kommt es zu einer Verschlechterung der Latenz? Wählen Sie in der Liste Datenbanken verschiedene Datenbanken aus, um die Datenbanken mit der höchsten Latenz zu finden. Wenn Sie herausfinden möchten, welche Datenbank die höchste Last hat, können Sie sich auch das Latenzdiagramm für Datenbanken in der Google Cloud Console ansehen.

Ist die Latenz hoch? Ist die Latenz im Vergleich zur erwarteten Latenz für die Arbeitslast hoch? Ist eine Spitze oder ein Anstieg im Zeitverlauf zu sehen? Wenn keine hohe Latenz angezeigt wird, sind Hotspots kein Problem.
Liegt der CPU-Nutzungswert des Spitzen-Splits bei 100 %? Ist eine Spitze oder ein Anstieg im Zeitverlauf zu sehen? Wenn Sie nicht mindestens 10 Minuten lang eine dauerhafte CPU-Auslastung von 100 % für die Spitzenaufteilung sehen, sind Hotspots möglicherweise kein Problem. Wenn der Prozentsatz der CPU-Auslastung für die Spitzenaufteilung länger als 10 Minuten hoch ist, sollten Sie prüfen, ob die Datenbank höhere Latenzwerte als erwartet hat.
Wenn Sie länger als 10 Minuten eine CPU-Auslastung von 100 % für den Spitzen-Split sehen, müssen Sie möglicherweise eingreifen. Als Nächstes können Sie mit der Fehlerbehebung fortfahren, indem Sie die Hot-Splits in Ihrer Datenbank identifizieren.
Problematische Hot-Splits identifizieren
Informationen zum Identifizieren eines potenziell problematischen Splits mit Hotspots finden Sie im Abschnitt TopN-Splits in der Google Cloud Console, wie im Folgenden gezeigt.

Die Tabelle Top-N-Splits bietet eine Übersicht über die Splits, die im ausgewählten Zeitfenster möglicherweise stark genutzt werden, sortiert von der neuesten bis zur frühesten. Die Anzahl der TopN-Aufteilungen ist auf 100 beschränkt.
Für die Diagramme ruft Spanner Daten aus der Statistiktabelle für die Top-N-Splits mit einer Granularität von einer Minute ab. Der Wert für jeden Datenpunkt in den Diagrammen stellt den Durchschnittswert über ein Intervall von einer Minute dar.
Die Tabelle enthält die folgenden Attribute:
- Intervallende: Datum und Uhrzeit, zu der die hohe CPU-Auslastung endet.
- Split-Start: Der Startschlüssel des Zeilenbereichs im Split. Wenn der Split-Start <begin> ist, gibt er den Beginn des Schlüsselbereichs der Datenbank an.
- Split-Limit: Der Limitschlüssel des Zeilenbereichs im Split. Wenn der Limitschlüssel <end> ist, gibt er das Ende des Schlüsselbereichs der Datenbank an.
- CPU-Nutzungswert des Splits: Ein abstrakter Wert zwischen 0 und 100, der den Anteil der CPU-Nutzung durch Zugriffe auf die Zeilen innerhalb des Splits auf einem einzelnen Server angibt. Anhand des CPU-Nutzungswerts können Sie ermitteln, ob ein Heißlaufen zu verzeichnen ist.
- Betroffene Tabellen: Die Tabellen, deren Zeilen möglicherweise im Split enthalten sind.
- Gründe für die Unteilbarkeit: Eine Reihe von Gründen, warum Spanner einen Hot Split nicht weiter aufteilen kann. Wenn hier Werte vorhanden sind, bedeutet dies, dass die lastbasierte Aufteilung den Hotspot aus den aufgeführten Gründen nicht entschärfen kann. Weitere Informationen finden Sie unter
UNSPLITTABLE_REASONS-Typen.
Gründe für Nichtaufteilbarkeit analysieren
In der Tabelle TopN-Splits können Sie sich genauer ansehen, welche bestimmten Splits zu bestimmten Zeiten von diesen Gründen betroffen sind, wie in der Spalte Gründe für nicht aufteilbare Splits gezeigt.
Beispielhafter Diagnoseablauf
Hier ist ein typischer Workflow zum Debuggen von Hotspots mit dem Dashboard:
- Leistungsproblem beobachten: Sie bemerken eine erhöhte Latenz oder Fehler in Ihrer Anwendung.
- Hotspot-Statistiken öffnen: Rufen Sie in der Google Cloud Console das Dashboard „Hotspot-Statistiken“ für die entsprechende Spanner-Datenbank auf. Wählen Sie den Zeitraum aus, in dem das Problem aufgetreten ist.
- Diagramm prüfen:
- Prüfen Sie das Diagramm CPU-Nutzungswert des Spitzen-Splits auf anhaltend hohe Werte, z. B. > 50 %, insbesondere Werte, die sich 100 % nähern und mindestens 10 Minuten lang anhalten.
- Betroffene Splits identifizieren und Ergebnisse korrelieren: Wenn die CPU-Auslastung hoch ist, rufen Sie die Tabelle TopN-Splits auf. Filtern oder sortieren Sie, um die Splits mit dem höchsten CPU-Nutzungswert des Splits während des Zeitraums der Auswirkung zu finden. Sehen Sie sich die Spalte
UNSPLITTABLE_REASONSfür diese Top-Splits an:- Hoher CPU-Nutzungswert für Splits und Gründe für nicht aufteilbare Splits: Dies ist ein starkes Signal dafür, dass das Leistungsproblem mit Hotspots zusammenhängt, die Spanner nicht automatisch beheben kann. Die Art des Grundes, z. B.
HOT_ROWoderMOVING_HOT_SPOT, liefert einen wichtigen Hinweis. - Hoher CPU-Nutzungswert des Splits und keine Gründe für die Unteilbarkeit: Der Hotspot ist möglicherweise neu und Spanner ist möglicherweise noch dabei, den Split durchzuführen. Alternativ kann es sein, dass das Problem auf Änderungen an der Arbeitslast reagiert, was keine Maßnahmen Ihrerseits erfordert.
- Hoher CPU-Nutzungswert für Splits und Gründe für nicht aufteilbare Splits: Dies ist ein starkes Signal dafür, dass das Leistungsproblem mit Hotspots zusammenhängt, die Spanner nicht automatisch beheben kann. Die Art des Grundes, z. B.
- Gründe verstehen: Beachten Sie die spezifischen Codes im Array
UNSPLITTABLE_REASONS. - Maßnahmen ergreifen: Basierend auf den ermittelten Gründen finden Sie unter
UNSPLITTABLE_REASONS-Typen detaillierte Erläuterungen und empfohlene Maßnahmen, die in der Regel Änderungen am Schemadesign oder Anpassungen der Arbeitslast umfassen.