CPU-Auslastungsmesswerte

Auf dieser Seite werden die CPU-Auslastungsmesswerte beschrieben, die Cloud Spanner bietet. Sie können diese Messwerte in der Google Cloud Console und in der Cloud Monitoring Console aufrufen.

CPU-Auslastung und Aufgabenpriorität

Wenn Cloud Spanner die CPU-Auslastung misst, werden die Aufgaben in die folgenden Kategorien eingeteilt:

Nutzeraufgaben Systemaufgaben
Hohe Priorität Nutzeraufgaben mit hoher Priorität Systemaufgaben mit hoher Priorität

Aufgaben, die von Ihrer Anwendung initiiert und von Cloud Spanner mit hoher Priorität behandelt werden.

Umfasst die meisten Lese- und Commit-Anfragen. Enthält auch Teile der Verarbeitung von Batchschreibvorgängen, jedoch nicht von Batchlesevorgängen.

Aufgaben, die von Cloud Spanner initiiert und mit hoher Priorität behandelt werden.

Umfasst Index-Backfills und das Aufteilen von Daten.

Niedrige Priorität Nutzeraufgaben mit niedriger Priorität Systemaufgaben mit niedriger Priorität

Aufgaben, die von Ihrer Anwendung initiiert werden und die nicht so schnell erledigt werden müssen wie Aufgaben mit hoher Priorität.

Enthält Lese- und Schreibvorgänge, die von Dataflow-Jobs ausgegeben werden, darunter Import/Export

Aufgaben, die von Cloud Spanner initiiert werden und die nicht so schnell erledigt werden müssen wie Aufgaben mit hoher Priorität.

Umfasst Datenbankkomprimierung, Validierung von Schemaänderungen und Erstellung von Sicherungen.

Für Aufgaben mit hoher Priorität werden Aufgaben mit niedriger Priorität sofort beendet. Bei Bedarf beendet Cloud Spanner alle Aufgaben mit niedriger Priorität und ermöglicht Aufgaben mit hoher Priorität, bis zu 100 % der verfügbaren CPU-Ressourcen zu nutzen. Während Systemaufgaben mit niedriger Priorität zwar kurzfristig verzögert werden können, müssen sie für eine optimale Leistung dennoch später ausgeführt werden. Daher müssen Sie Ihrer Instanz genügend Knoten bereitstellen, um sowohl Aufgaben mit hoher als auch mit niedriger Priorität ausführen zu können.

Wenn keine Aufgaben mit hoher Priorität vorhanden sind, nutzt Cloud Spanner bis zu 100 % der verfügbaren CPU-Ressourcen, um Aufgaben mit niedriger Priorität schneller auszuführen. Lastspitzen im Hintergrund sind kein Anzeichen für ein Problem. Aufgaben mit niedriger Priorität können praktisch sofort beendet werden, wenn Aufgaben mit hoher Priorität, einschließlich Nutzeraufgaben, vorliegen.

Verfügbare Messwerte

Cloud Spanner stellt die folgenden Messwerte für die CPU-Auslastung bereit:

  • Gleitender Durchschnitt über 24 Stunden: Ein gleitender Durchschnitt der gesamten CPU-Auslastung als Prozentsatz der CPU-Ressourcen der Instanz für jede Datenbank. Jeder Datenpunkt ist ein Durchschnittswert für die letzten 24 Stunden.
  • Hohe Priorität: Die CPU-Auslastung als Prozentsatz der CPU-Ressourcen der Instanz für Aufgaben mit hoher Priorität.
  • Gesamt: Die gesamte CPU-Auslastung als Prozentsatz der CPU-Ressourcen der Instanz.

    Für Instanzen können Sie Diagramme der gesamten CPU-Auslastung nach Datenbank oder nach Aufgabenpriorität anzeigen lassen.

    Für Datenbanken können Sie die gesamte CPU-Auslastung nach Aufgabenpriorität anzeigen lassen.

Sie können Diagramme für diese Messwerte in der Cloud Console oder in der Cloud Monitoring Console aufrufen. Sie können die Cloud Monitoring Console auch verwenden, um Benachrichtigungen für eine hohe CPU-Auslastung zu erstellen, wie unten beschrieben.

In der folgenden Tabelle finden Sie unsere Empfehlungen zur maximalen CPU-Auslastung für Instanzen mit einer einzelnen Region und mit mehreren Regionen. Diese Zahlen sorgen dafür, dass Ihre Instanz über genügend Rechenleistung verfügt, damit der Traffic auch dann weitergeleitet werden kann, wenn eine gesamte Zone (bei Instanzen mit nur einer Region) oder eine gesamte Region (bei Instanzen mit mehreren Regionen) ausfällt.

Messwert Maximum für Instanzen mit einer Region Maximum pro Region für Instanzen mit mehreren Regionen
Hohe Priorität insgesamt 65 % 45 %
Über 24 Stunden geglättetes Aggregat 90 % 90 %

Damit Sie unter den empfohlenen Maximalwerten bleiben, erstellen Sie Benachrichtigungen in Cloud Monitoring, die die CPU-Auslastung mit hoher Priorität und die durchschnittliche CPU-Auslastung über 24 Stunden erfassen.

Die CPU-Auslastung kann sich auf die Anfragelatenzen auswirken. Eine Überlastung eines einzelnen Back-End-Servers führt zu höheren Anfragelatenzen. Die Anwendungen sollten Benchmarks und aktives Monitoring ausführen, um zu prüfen, ob Cloud Spanner ihre Leistungsanforderungen erfüllt.

Bei leistungsabhängigen Anwendungen müssen Sie die CPU-Auslastung möglicherweise mithilfe der im folgenden Abschnitt beschriebenen Techniken zusätzlich reduzieren.

CPU-Auslastung reduzieren

In diesem Abschnitt wird erläutert, wie Sie die CPU-Auslastung einer Instanz reduzieren können.

Im Allgemeinen empfehlen wir Ihnen, der Instanz Knoten als Ausgangspunkt hinzuzufügen. Nachdem Sie Knoten hinzugefügt haben, können Sie die Ursachen der hohen CPU-Auslastung untersuchen und beheben.

Knoten hinzufügen

Wenn Sie die empfohlenen Maximalwerte für die CPU-Auslastung überschreiten, empfehlen wir dringend, Ihrer Instanz Knoten hinzuzufügen, damit sie weiterhin effizient arbeiten kann. Wenn Sie diesen Prozess automatisieren möchten, können Sie eine Anwendung erstellen, die die CPU-Auslastung überwacht und anschließend mit der Methode UpdateInstance Knoten nach Bedarf hinzufügt und entfernt.

Um die Anzahl der benötigten Knoten zu bestimmen, müssen Sie sowohl die höchste CPU-Auslastung mit hoher Priorität als auch den rund um die Uhr geglätteten Durchschnitt berücksichtigen. Weisen Sie immer genügend Knoten zu, um die CPU-Auslastung unter den empfohlenen Maximalwerten zu halten. Wie bereits beschrieben, müssen Sie möglicherweise zusätzliche Knoten für Anwendungen mit hoher Leistung zuweisen, um beispielsweise Arbeitslasten auszugleichen.

Wenn Sie nicht genügend Knoten haben, verschiebt Cloud Spanner Aufgaben nach Prioritätsstufe. Systemaufgaben mit niedriger Priorität wie Datenbankverdichtung und Validierung von Schemaänderungen können zugunsten von Nutzeraufgaben zurückgestellt werden. Diese Aufgaben sind jedoch für die Integrität Ihrer Instanz von entscheidender Bedeutung und können von Cloud Spanner nicht unbegrenzt aufgeschoben werden. Wenn Cloud Spanner seine Systemaufgaben mit niedriger Priorität nicht innerhalb eines bestimmten Zeitfensters – in der Größenordnung von mehreren Stunden pro Tag – aufgrund unzureichender Rechenressourcen ausführen kann, erhöht Cloud Spanner möglicherweise die Priorität der Systemaufgaben. Diese Änderung wirkt sich auf die Leistung von Nutzeraufgaben aus.

Abfrageleistung optimieren

In einigen Fällen weist Ihre Instanz möglicherweise eine hohe CPU-Auslastung auf, da SQL-Abfragen nicht so effizient sind, wie sie sein könnten. Mit den Abfragestatistiken für Ihre Datenbank können Sie Abfragen ermitteln, die zu einer hohen CPU-Auslastung führen. Basierend auf den Abfrageplänen können Sie diese Abfragen optimieren, um die CPU-Auslastung zu reduzieren.

Weitere Informationen