Auf dieser Seite wird beschrieben, wie Sie mit dem Query Insights-Dashboard Leistungsprobleme bei Ihren Abfragen erkennen und analysieren.
Einführung
Mit Query Insights können Sie Probleme bei der Abfrageleistung in Cloud SQL-Datenbanken ermitteln, diagnostizieren und verhindern. Es unterstützt ein intuitives Monitoring und liefert Diagnoseinformationen, die Ihnen helfen, über die Erkennung hinaus die Ursache von Leistungsproblemen zu identifizieren.
Mit Query Insights können Sie die Leistung von Cloud SQL-Abfragen verbessern. Dabei werden Sie durch die folgenden Schritte geführt:
Query Insights für die Cloud SQL Enterprise Plus-Version
Wenn Sie die Cloud SQL Enterprise Plus-Version verwenden, können Sie auf zusätzliche Funktionen in Query Insights zugreifen, um eine erweiterte Diagnose der Abfrageleistung durchzuführen. Zusätzlich zu den Standardfunktionen des Query Insights-Dashboards können Sie mit Query Insights für die Cloud SQL Enterprise Plus-Version Folgendes tun:
- Längere Abfragetexte mit bis zu 20 KB erfassen.
- Abfragepläne für alle ausgeführten Abfragen erfassen.
- Stichproben von bis zu 200 Abfrageplänen pro Minute.
- Messwerte werden 30 Tage lang aufbewahrt.
- Indexempfehlungen vom Indexberater erhalten.
- Sitzung oder lang andauernde Transaktion in aktiven Abfragen beenden.
- Auf die KI-gestützte Fehlerbehebung (Vorschau) zugreifen.
In der folgenden Tabelle werden die funktionalen Anforderungen und Funktionen von Query Insights für die Cloud SQL Enterprise-Version mit Query Insights für die Cloud SQL Enterprise Plus-Version verglichen.
| Vergleichsbereich | Query Insights für die Cloud SQL Enterprise-Version | Query Insights für die Cloud SQL Enterprise Plus-Version |
|---|---|---|
| Unterstützte Datenbankversionen |
Alle Versionen der folgenden Instanzen:
Query Insights wird auf SQL Server Express-Instanzen nicht unterstützt. |
SQL Server Enterprise Version 2019 oder 2022 |
| Unterstützte Maschinentypen | Wird auf allen Maschinentypen unterstützt | Nicht unterstützt auf Instanzen, die einen Maschinentyp mit gemeinsam genutztem Kern verwenden |
| Unterstützte Regionen | Regionale Cloud SQL-Standorte | Regionale Standorte für die Cloud SQL Enterprise Plus-Version |
| Aufbewahrungsdauer für Messwerte | 7 Tage | 30 Tage |
| Maximale Abfragelänge | 4.500 Byte | 20 KB |
| Maximale Anzahl von Abfrageplanstichproben | 20 | 200 |
| Empfehlungen des Indexberaters | Nicht verfügbar | Verfügbar |
| Sitzungen oder lang andauernde Transaktionen in aktiven Abfragen beenden | Nicht verfügbar | Verfügbar |
| KI-gestützte Fehlerbehebung (Vorschau) | Nicht verfügbar | Verfügbar |
| Kardinalitätsgrenzwerte für Abfragen | Gibt die aggregierten Statistiken für alle Abfragen zurück. | Gibt die aggregierten Statistiken für alle Abfragen zurück. |
Query Insights für Cloud SQL Enterprise Plus aktivieren
Wenn Sie Query Insights für die Cloud SQL Enterprise Plus-Version aktivieren möchten, wählen Sie Enterprise Plus-Features aktivieren aus, wenn Sie Query Insights auf Ihrer Cloud SQL Enterprise Plus-Instanz aktivieren.
Preise
Für Query Insights auf Cloud SQL Enterprise- oder Cloud SQL Enterprise Plus-Instanzen fallen keine zusätzlichen Kosten an.
Speicherbedarf
Query Insights speichert Messwertdaten auf der Instanz. Dazu muss die Einstellung für die automatische Speichererweiterung aktiviert bleiben. Es fallen die entsprechenden Speichergebühren an.
Beschränkungen
Für Query Insights für Cloud SQL Enterprise Plus-Instanzen gelten die folgenden Einschränkungen:
- Wenn Ihre Instanz einer hohen Systemlast ausgesetzt ist, kann es beim Abfragen von Messwertdaten im Dashboard Query Insights zu langsamen Ladezeiten oder Zeitüberschreitungen kommen.
- Wenn Sie ein Lesereplikat neu erstellen, wird der bisherige Messwertverlauf nicht beibehalten.
- Wenn Sie eine Query Insights für Cloud SQL Enterprise Plus-Instanz aus einer älteren Sicherung wiederherstellen, gehen möglicherweise die Messwerte verloren, die zwischen dem Zeitpunkt der Sicherung und dem Zeitpunkt der Wiederherstellung der Instanz erfasst wurden. Wenn Sie beispielsweise Ihre Instanz am 30. April mit einer Sicherung vom 25. April wiederherstellen, gehen möglicherweise alle Messwerte zwischen dem 25. April und dem 30. April verloren.
Hinweis
Führen Sie die folgenden Schritte aus, bevor Sie Query Insights verwenden.
- Erforderliche Rollen und Berechtigungen hinzufügen
- Aktivieren Sie die Cloud Trace API.
- Wenn Sie Query Insights für die Cloud SQL Enterprise-Version oder Query Insights für die Cloud SQL Enterprise Plus-Version verwenden, muss Automatische Speichererweiterungen aktivieren für die Instanz aktiviert sein.
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, in dem die Cloud SQL-Instanz gehostet wird, um die Berechtigungen zu erhalten, die Sie für den Zugriff auf historische Abfrageausführungsdaten im Query Insights-Dashboard benötigen:
- Database Insights Viewer (
roles/databaseinsights.viewer) - Cloud SQL-Betrachter (
roles/cloudsql.viewer)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Cloud Trace API aktivieren
Wenn Sie Abfragepläne und ihre End-to-End-Ansichten aufrufen möchten, muss in Ihrem Google Cloud -Projekt die Cloud Trace API aktiviert sein. Mit dieser Einstellung kann IhrGoogle Cloud -Projekt ohne zusätzliche Kosten Trace-Daten von authentifizierten Quellen empfangen. Anhand dieser Daten können Sie Leistungsprobleme in Ihrer Instanz erkennen und diagnostizieren.
So prüfen Sie, ob die Cloud Trace API aktiviert ist:
- Rufen Sie in der Google Cloud Console APIs und Dienste auf:
- Klicken Sie auf APIs und Dienste aktivieren.
- Geben Sie in der Suchleiste
Cloud Trace APIein. - Wenn API aktiviert angezeigt wird, ist diese API aktiviert und Sie müssen nichts tun. Klicken Sie andernfalls auf Aktivieren.
Automatische Speichererhöhungen aktivieren
Wenn Sie Query Insights für die Cloud SQL Enterprise Plus-Version verwenden, muss die Instanzeinstellung Automatische Speichererweiterungen aktivieren aktiviert bleiben. Diese Option ist für Cloud SQL-Instanzen standardmäßig aktiviert.
Wenn Sie diese Instanzeinstellung zuvor deaktiviert haben und Query Insights für die Cloud SQL Enterprise Plus-Version aktivieren möchten, müssen Sie zuerst die automatische Speichererweiterung wieder aktivieren. Sie können die automatische Speichererhöhung nicht deaktivieren und Query Insights für die Cloud SQL Enterprise Plus-Version nicht aktivieren.
Query Insights aktivieren
Wenn Sie Query Insights aktivieren, werden alle anderen Vorgänge vorübergehend angehalten. Zu diesen Vorgängen gehören Systemdiagnosen, Logging, Monitoring und andere Instanzvorgänge.
Console
Query Insights für eine Instanz aktivieren
-
Rufen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen auf.
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie in der Kachel Konfiguration auf Konfiguration bearbeiten.
- Maximieren Sie im Bereich Instanz anpassen den Eintrag Query Insights.
- Klicken Sie das Kästchen Query Insights aktivieren an.
- Optional: Wählen Sie zusätzliche Funktionen für Ihre Instanz aus. Einige Funktionen sind nur für die Cloud SQL Enterprise Plus-Version verfügbar.
- Klicken Sie auf Speichern.
| Funktion | Beschreibung | Cloud SQL Enterprise-Version | Cloud SQL Enterprise Plus-Version |
|---|---|---|---|
| Enterprise Plus-Funktionen aktivieren | Klicken Sie dieses Kästchen an, um Query Insights für die Cloud SQL Enterprise Plus-Version zu aktivieren. Mit Query Insights für die Cloud SQL Enterprise Plus-Version können Sie Sitzungen und lang andauernde Transaktionen in aktiven Abfragen beenden, Empfehlungen des Indexberaters aktivieren, um die Abfrageverarbeitung zu beschleunigen, und die Datenaufbewahrung für Messwertdaten auf 30 Tage erhöhen. Empfehlungen des Indexberaters werden automatisch aktiviert, wenn Sie Query Insights für die Cloud SQL Enterprise Plus-Version aktivieren. Entfernen Sie das Häkchen, um die Empfehlungen des Indexberaters zu deaktivieren. Sie müssen dieses Kästchen anklicken, um Empfehlungen des Indexberaters und die KI-gestützte Fehlerbehebung (Vorschau) zu aktivieren. | Nicht verfügbar | Verfügbar
Standard: Deaktiviert |
| KI-gestützte Fehlerbehebung | Klicken Sie dieses Kästchen an, um die Anomalieerkennung, die Ursachen- und Situationsanalyse zu aktivieren und Empfehlungen zur Behebung von Problemen mit Ihren Abfragen und Ihrer Datenbank zu erhalten. Dieses Feature befindet sich im Vorschaumodus und kann nur über die Google Cloud Console aktiviert und aufgerufen werden. Weitere Informationen finden Sie unter Mit KI-Unterstützung beobachten und Fehler beheben. | Nicht verfügbar | Verfügbar
Standard: Deaktiviert |
| Abfragelänge anpassen |
Klicken Sie dieses Kästchen an, um die maximale Länge eines Abfragestrings anzupassen.
Höhere Abfragelängen sind hilfreich für analytische Abfragen, erfordern aber auch mehr Arbeitsspeicher.
Alle Abfragestrings, die das angegebene Limit überschreiten, werden in der Anzeige abgeschnitten. Wenn Sie das Limit für die Abfragelänge ändern, müssen Sie die Instanz neu starten. |
Sie können das Limit in Byte von 256 Byte bis 4500 Byte festlegen.
Standard: 1024.
|
Sie können ein Limit in Byte von 256 bis 20480 angeben.
Standardwert: 10240 Byte (10 KB).
|
| Maximale Abtastrate festlegen | Klicken Sie dieses Kästchen an, um die maximale Abtastrate festzulegen. Die Abtastrate ist die Anzahl der ausgeführten Abfrageplanstichproben, die pro Minute in allen Datenbanken der Instanz erfasst werden. Wenn Sie die Abtastrate erhöhen, erhalten Sie wahrscheinlich mehr Datenpunkte. Allerdings kann dies zu Leistungseinbußen führen. | Sie ändern diesen Wert in eine Zahl von 0 bis 20.
Standard: 5.
|
Sie können den Höchstwert auf 200 erhöhen, um mehr Datenpunkte bereitzustellen.
Standard: 5.
|
Query Insights für mehrere Instanzen aktivieren
-
Rufen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen auf.
- Klicken Sie in einer beliebigen Zeile auf das Dreipunkt-Menü .
- Wählen Sie Query Insights aktivieren aus.
- Klicken Sie im Dialogfeld auf das Kästchen Query Insights für mehrere Instanzen aktivieren.
- Klicken Sie auf Aktivieren.
- Wählen Sie im nachfolgenden Dialogfeld die Instanzen aus, für die Sie Query Insights aktivieren möchten.
- Klicken Sie auf Query Insights aktivieren.
gcloud
Um Query Insights für eine Cloud SQL-Instanz mithilfe von gcloud zu aktivieren, führen Sie gcloud sql instances patch mit dem Flag --insights-config-query-insights-enabled so aus, nachdem Sie INSTANCE_ID durch die ID der Instanz ersetzt haben.
Wenn Sie Query Insights für eine Cloud SQL Enterprise Plus-Instanz aktivieren, werden die Empfehlungen des Indexberaters automatisch aktiviert.
gcloud sql instances patch INSTANCE_ID \ --insights-config-query-insights-enabled
Verwenden Sie außerdem eines oder mehrere der folgenden optionalen Flags:
--insights-config-query-string-lengthLegt die Standardbegrenzung für die Abfragelänge fest. Höhere Abfragelängen sind hilfreich für analytische Abfragen, erfordern aber auch mehr Arbeitsspeicher. Wenn Sie das Limit für die Abfragelänge ändern, müssen Sie die Instanz neu starten. Für die Cloud SQL Enterprise-Version können Sie einen Wert in Byte von
256bis4500angeben. Die Standardlänge der Abfrage beträgt1024Byte. Für die Cloud SQL Enterprise Plus-Version können Sie ein Limit in Byte von256bis20480angeben. Der Standardwert ist10240Byte (10 KB).--insights-config-query-plans-per-minuteStandardmäßig werden in allen Datenbanken der Instanz maximal 5 ausgeführte Abfrageplanstichproben pro Minute erfasst. Wenn Sie die Abtastrate erhöhen, erhalten Sie wahrscheinlich mehr Datenpunkte. Allerdings kann dies zu Leistungseinbußen führen. Wenn Sie die Stichprobenerhebung deaktivieren möchten, setzen Sie diesen Wert auf
0. Bei der Cloud SQL Enterprise-Version können Sie den Wert von 0 bis 20 ändern. In der Cloud SQL Enterprise Plus-Version können Sie den Höchstwert auf bis zu 200 erhöhen, um mehr Datenpunkte bereitzustellen.
Ersetzen Sie Folgendes:
- INSIGHTS_CONFIG_QUERY_STRING_LENGTH: Die zu speichernde Länge des Abfragestrings in Byte.
- API_TIER_STRING: Die benutzerdefinierte Instanzkonfiguration, die für die Instanz verwendet werden soll.
- REGION: Die Region für die Instanz.
gcloud sql instances patch INSTANCE_ID \ --insights-config-query-insights-enabled \ --insights-config-query-string-length=INSIGHTS_CONFIG_QUERY_STRING_LENGTH \ --insights-config-query-plans-per-minute=QUERY_PLANS_PER_MINUTE \ --tier=API_TIER_STRING \ --region=REGION
REST Version 1
Rufen Sie die Methode instances.patch mit den Einstellungen für insightsConfig auf, um Query Insights für eine Cloud SQL-Instanz mithilfe der REST API zu aktivieren.
Wenn Sie Query Insights für eine Cloud SQL Enterprise Plus-Instanz aktivieren, werden die Empfehlungen des Indexberaters automatisch aktiviert.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: die Projekt-ID
- INSTANCE_ID: die Instanz-ID
HTTP-Methode und URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON-Text anfordern:
{
"settings" : {
"insightsConfig" : {
"queryInsightsEnabled" : true,
"queryStringLength" : 1024,
"queryPlansPerMinute" : 20,
}
}
}
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-03-28T22:43:40.009Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Terraform
Wenn Sie Terraform verwenden möchten, um Query Insights für eine Cloud SQL-Instanz zu aktivieren, legen Sie das Flag query_insights_enabled auf true fest.
Wenn Sie Query Insights für eine Cloud SQL Enterprise Plus-Instanz aktivieren, werden automatisch Empfehlungen des Indexberaters aktiviert.
Sie können auch eines oder mehrere der folgenden optionalen Flags verwenden:
query_string_length: Für die Cloud SQL Enterprise-Version können Sie einen Wert in Byte von256bis4500angeben. Die Standardlänge der Abfrage beträgt1024Byte. Für die Cloud SQL Enterprise Plus-Version können Sie ein Limit in Byte von256bis20480angeben. Der Standardwert ist10240Byte (10 KB).-
query_plans_per_minute: Für die Cloud SQL Enterprise-Version können Sie den Wert von0auf20festlegen. Der Standardwert ist5. In der Cloud SQL Enterprise Plus-Version können Sie den Höchstwert auf bis zu200erhöhen, um mehr Datenpunkte bereitzustellen.
Beispiel:
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Google Cloud -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Standardprojekt von Google Cloud fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Google Cloud -Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Google Cloud Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
Messwerte sollten innerhalb von Minuten nach Abschluss der Abfrage in Query Insights verfügbar sein.
Query Insights-Dashboard ansehen
Im Query Insights-Dashboard wird die Abfragelast basierend auf von Ihnen ausgewählten Faktoren angezeigt. Die Abfragelast ist ein Maß für die Gesamtarbeit aller Abfragen in der Instanz im ausgewählten Zeitraum. Das Dashboard bietet eine Reihe von Filtern, mit denen Sie die Abfragelast anzeigen können.
So öffnen Sie das Query Insights-Dashboard:
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie im Cloud SQL-Navigationsmenü auf Query Insights oder auf der Seite Instanzübersicht auf Zu „Query Insights“ für ausführliche Informationen über Abfragen und zur Leistung.
Das Dashboard Query Insights wird geöffnet. Je nachdem, ob Sie Query Insights für die Cloud SQL Enterprise-Version oder Query Insights für die Cloud SQL Enterprise Plus-Version verwenden, werden im Query Insights-Dashboard die folgenden Informationen zu Ihrer Instanz angezeigt:
- Datenbanken: Filtert die Abfragelast für eine bestimmte Datenbank oder für alle Datenbanken.
- Zeitraum: Filtert die Abfragelast nach Zeiträumen, z. B. 1 Stunde, 6 Stunden, 1 Tag, 7 Tage, 30 Tage oder einen benutzerdefinierten Bereich.
- Diagramm zur Datenbanklast: Zeigt das Abfrageladediagramm basierend auf den gefilterten Daten an.
- Abfragen und Datenbanken: Filtert die Abfragelast entweder nach einer ausgewählten Abfrage oder einer ausgewählten Datenbank. Siehe Datenbanklast filtern.
Datenbanklast für alle Abfragen ansehen
Die Anzahl der Datenbankabfragen ist eine Messung der Arbeit (in CPU-Sekunden), die von den ausgeführten Abfragen in der ausgewählten Datenbank im Zeitverlauf ausgeführt wird. Bei jeder ausgeführten Abfrage wird entweder CPU-Ressourcen, E/A-Ressourcen oder Sperren von CPU-Ressourcen verwendet oder darauf gewartet. Die Datenbankabfragelast ist das Verhältnis der Zeit, die von allen innerhalb eines bestimmten Zeitfensters abgeschlossenen Abfragen benötigt wird, zur tatsächlich verstrichenen Zeit.
Das Dashboard „Query Insights“ der obersten Ebene zeigt das Diagramm Datenbanklast nach Ausführungszeit. Mit Drop-down-Menüs im Dashboard können Sie das Diagramm für alle Datenbanken oder eine bestimmte Datenbank filtern.
Die farbigen Linien in der Grafik zeigen die Datenbanklast nach Ausführungszeit. Sehen Sie sich die Grafik an und verwenden Sie die Filteroptionen, um diese Fragen zu untersuchen:
- Ist die Abfragelast hoch? Ist eine Spitze oder ein Anstieg im Zeitverlauf zu sehen? Wenn keine hohe Last angezeigt wird, liegt das Problem nicht bei Ihrer Abfrage.
- Wie lange war die Last hoch? Ist sie erst jetzt hoch oder war sie schon lange hoch? Verwenden Sie die Bereichsauswahl, um verschiedene Zeiträume auszuwählen, um herauszufinden, wie lange das Problem besteht. Vergrößern Sie die Ansicht, um ein Zeitfenster zu sehen, in dem Spitzen bei der Abfragelast beobachtet werden. Zoomen Sie heraus, um bis zu einer Woche der Zeitachse anzuzeigen.
- Welche Datenbank hat die Auslastung? Wählen Sie im Drop-down-Menü „Datenbanken“ verschiedene Datenbanken aus, um die Datenbanken mit den höchsten Lasten zu finden.
Datenbanklast filtern
Sie können die Datenbanklast nach Abfragen filtern. Sie können das Diagramm zur Datenbanklast anpassen, um die angezeigten Daten nach einer der folgenden Dimensionen aufzuschlüsseln:Alle Abfragen
Datenbanken
Wenn Sie das Diagramm zur Datenbanklast anpassen möchten, wählen Sie im Drop-down-Menü Datenbanklast nach Ausführungszeit eine Dimension aus.
Top-Beitragende zur Datenbanklast ansehen
In der Tabelle Top-Dimensionen nach Datenbanklast können Sie die Top-Beitragenden zur Datenbanklast aufrufen. In der Tabelle Top-Dimensionen nach Datenbanklast werden die Top-Beitragenden für den Zeitraum und die Dimension angezeigt, die Sie im Drop-down-Menü des Diagramms Datenbanklast nach Ausführungszeit auswählen. Sie können den Zeitraum oder die Dimension ändern, um die Top-Beitragenden für eine andere Dimension oder einen anderen Zeitraum anzusehen.
In der Tabelle Top-Dimensionen nach Datenlast können Sie die folgenden Tabs auswählen.
| Tabulatortaste | Beschreibung |
|---|---|
| Abfragen | In der Tabelle werden die wichtigsten normalisierten Abfragen nach Gesamtausführungszeit angezeigt.
Für jede Abfrage werden die in den Spalten angezeigten Daten so aufgeführt:
|
| Datenbanken | In der Tabelle finden Sie eine Liste der Top-Datenbanken, die im ausgewählten Zeitraum über alle ausgeführten Abfragen hinweg zur Last beigetragen haben.
|
Nach Abfragen filtern
Die Tabelle Top-Dimensionen nach Datenbanklast bietet einen Überblick über die Abfragen, die die meisten Abfragelasten verursachen. Die Tabelle enthält alle normalisierten Abfragen für den Zeitraum und die Optionen, die im Query Insights-Dashboard ausgewählt wurden. Es sortiert Abfragen nach der gesamten Ausführungszeit während des ausgewählten Zeitraums.
Wählen Sie zum Sortieren der Tabelle eine Spaltenüberschrift aus.
Die Tabelle enthält die folgenden Attribute:
- Abfrage: Der normalisierte Abfragestring. Standardmäßig zeigt Query Insights nur 1.024 Zeichen im Abfragestring an.
- Datenbank: Die Datenbank, für die die Abfrage ausgeführt wurde.
- Empfehlungen: Die vorgeschlagenen Empfehlungen, z. B. Indexe erstellen, um die Abfrageleistung zu verbessern.
- Durchschnittliche Ausführungszeit (ms): Die durchschnittliche Zeit für die Ausführung der Abfrage.
- Gesamtausführungszeit (ms): Die Gesamtzeit für die Ausführung der Abfrage.
- Aufrufe: Gibt an, wie oft die Anwendung die Abfrage aufgerufen hat.
- Durchschnittliche zurückgegebene Zeilen: Die durchschnittliche Anzahl der Zeilen, die für die Abfrage zurückgegeben wurden.
In Query Insights werden nur normalisierte Abfragen gespeichert und angezeigt.
Vorgänge in einem Beispielabfrageplan prüfen
Ein Abfrageplan nimmt eine Stichprobe Ihrer Abfrage und unterteilt sie in einzelne Vorgänge. Die einzelnen Vorgänge in der Abfrage werden erläutert.
Das Diagramm Abfrageplanbeispiele zeigt alle Abfragepläne, die zu bestimmten Zeiten ausgeführt werden, sowie die Zeit, die jeder Plan benötigt hat. Sie können die Rate ändern, mit der die Stichproben von Abfrageplänen pro Minute erfasst werden. Siehe Query Insights aktivieren.
Standardmäßig zeigt das Feld rechts die Details für den Beispiel-Abfrageplan an, der die längste Zeit in Anspruch nimmt, wie im Diagramm Abfrageplan-Beispiele angezeigt. Klicken Sie auf den entsprechenden Kreis im Diagramm, um die Details für einen anderen Beispielabfrageplan anzuzeigen. Erweiterte Details zeigen ein Modell aller Vorgänge im Abfrageplan.
Jeder Vorgang zeigt die zurückgegebenen Zeilen und, falls verfügbar, die Kosten für diesen Vorgang an. Verwenden Sie die Vollbildansicht oder den Tab
Versuchen Sie, das Problem anhand der folgenden Fragen einzugrenzen:
- Wie hoch ist der Ressourcenverbrauch?
- Wie hängt er mit anderen Abfragen zusammen?
- Ändert sich der Verbrauch im Laufe der Zeit?
Funktion „Abfragedetails“
Abfragedetails können weitere Informationen zu einer bestimmten Abfrage enthalten, z. B. die durchschnittliche Ausführungszeit, die Anzahl der Aufrufe und die durchschnittliche Anzahl der zurückgegebenen Zeilen. Außerdem können Empfehlungen wie Indizes angeboten werden, um die Abfrageleistung zu verbessern.
In den Abfragedetails sind auch die folgenden Messwerte enthalten:
- Abfrageplan-Stichproben: Diese Stichproben helfen Ihnen, Ihre Abfrage zu erläutern und zu analysieren. Dazu wird eine Aufschlüsselung der verschiedenen Vorgänge in einer Stichprobe der Abfrage bereitgestellt.
- Anzahl der Abfrageausführungen im Zeitverlauf: Gibt an, wie oft die Abfrage in einem bestimmten Zeitraum abgeschlossen wurde. Anhand des Diagramms können Sie besser nachvollziehen, wann eine Abfrage normalerweise ausgeführt wird, und die Auswirkungen der Abfrage auf die Instanzleistung abschätzen.
- Durchschnittliche zurückgegebene Zeilen im Zeitverlauf: Zeigt die durchschnittliche Anzahl der von der Abfrage im Laufe der Zeit zurückgegebenen Zeilen an. Anhand dieser Daten können Sie langsamer als übliche Abfragen mit einer erhöhten Menge an Daten korrelieren, die von diesen Abfragen zurückgegeben werden.
- E/A-Statistiken: Zeigt die Eingabe- und Ausgabestatistiken für die Abfrage an, einschließlich der folgenden Filter:
- Durchschnittliche logische Lesevorgänge
- Durchschnittliche physische Lesevorgänge
- Durchschnittliche logische Schreibvorgänge
Mithilfe von E/A-Messwerten können Sie langsamer als übliche Abfragen mit einer intensiveren E/A-Nutzung oder Änderungen bei E/A-Mustern korrelieren.
Wenn beispielsweise die Anzahl der logischen Lesevorgänge gestiegen ist, könnte das ein Hinweis darauf sein, dass die Abfrage mehr Daten als üblich liest. Wenn die Anzahl der physischen Lesevorgänge gestiegen ist, könnte das darauf hindeuten, dass Cloud SQL mehr Daten vom Laufwerk als aus dem Zwischenspeicher liest. Beispielsweise war möglicherweise nicht genügend Arbeitsspeicher vorhanden, um alle Daten im Cache zu speichern, oder die Instanz hat begonnen, zu viele Daten zu lesen. Wenn die Anzahl der logischen Schreibvorgänge gestiegen ist, könnte das darauf hindeuten, dass die Abfrage mehr Daten auf das Datenlaufwerk schreibt.
Dies ist ein Beispiel dafür, wie dieser Messwert helfen kann, die Auswirkungen der Abfrage auf die Instanz-E/A zu messen.
- Arbeitsspeicherstatistiken: Zeigt die Statistiken zur Arbeitsspeichernutzung für die Abfrage an, einschließlich der folgenden Filter:
- Durchschnittlicher idealer Arbeitsspeicher
- Durchschnittlich reservierter Arbeitsspeicher
- Durchschnittlich verwendeter Arbeitsspeicher
Mit diesem Messwert können Sie Änderungen am Arbeitsspeicherverbrauch im Zusammenhang mit der Abfrage erkennen, einschließlich der folgenden Beispiele:
- Mit diesem Messwert können Sie erkennen, ob Cloud SQL die für die Ausführung der Abfrage erforderliche Arbeitsspeichermenge falsch vorhergesagt und möglicherweise mehr Arbeitsspeicher reserviert hat, als von der Abfrage verwendet wird.
- Mit diesem Messwert können Sie erkennen, wenn Cloud SQL nicht genügend Arbeitsspeicher zuweisen konnte und eine kleinere Arbeitsspeicherzuweisung reserviert hat. In diesem Fall verwendet Cloud SQL die
tempdb-Datenbank, was langsamer ist als die Verwendung des Arbeitsspeichers. - Verwenden Sie den Messwert zusammen mit der Anzahl der Abfrageausführungen, um die Auswirkungen der Abfrage auf den Arbeitsspeicherverbrauch der Instanz zu messen.
- Verwenden Sie den Messwert, wenn Sie eine hohe Speichernutzung oder einen hohen Speicherdruck feststellen.
- Statistiken zu CPU- und Ausführungszeit: Zeigt eine kombinierte Ansicht der Statistiken zu CPU-Zeit und Ausführungszeit für die Abfrage. Mit dem Messwert „CPU-Zeit“ können Sie eine hohe CPU-Auslastung auf der Instanz untersuchen, z. B.:
- Sie können eine Kombination aus CPU-Zeit und Ausführungsanzahl verwenden, um die Auswirkungen der Abfrage auf den gesamten CPU-Verbrauch in der Instanz zu messen.
- Sie können eine Kombination aus CPU-Zeit, Ausführungszeit und Parallelitätsmesswerten verwenden, um den Prozentsatz der Zeit zu messen, in der die Abfrage auf Ressourcen gewartet hat.
- Mit dem Messwert für die Ausführungszeit können Sie feststellen, ob die Ausführung einer Abfrage länger als gewöhnlich gedauert hat.
- Zusätzliche Abfragestatistiken: Zeigt zusätzliche Statistiken im Zusammenhang mit der Abfrage an, einschließlich der folgenden Filter:
- CLR-Statistiken (Common Language Runtime)
- Columnstore-Statistiken
- Speicherüberläufe
- Parallelitätsstatistiken
Blockierte aktive Abfragen
Wenn eine bestimmte aktive Abfrage blockiert ist oder viel länger als erwartet ausgeführt wird, kann sie andere abhängige Abfragen blockieren.
In Cloud SQL können Sie bestimmte lang andauernde oder blockierte aktive Abfragen beenden.
Weitere Informationen finden Sie unter Blockierte aktive Abfragen.
Query Insights deaktivieren
Console
So deaktivieren Sie Query Insights für eine Cloud SQL-Instanz mithilfe der Google Cloud Console:
-
Rufen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen auf.
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie in der Kachel Konfiguration auf Konfiguration bearbeiten.
- Erweitern Sie im Abschnitt Konfigurationsoptionen die Option Query Insights.
- Entfernen Sie das Häkchen aus dem Kästchen Query Insights aktivieren.
- Klicken Sie auf Speichern.
gcloud
Um Query Insights für eine Cloud SQL-Instanz mithilfe von gcloud zu deaktivieren, führen Sie gcloud sql instances patch mit dem Flag --no-insights-config-query-insights-enabled so aus, nachdem Sie INSTANCE_ID durch die ID der Instanz ersetzt haben.
gcloud sql instances patch INSTANCE_ID \ --no-insights-config-query-insights-enabled
REST
Rufen Sie die Methode instances.patch auf, wobei queryInsightsEnabled so auf false gesetzt ist, um Query Insights für eine Cloud SQL-Instanz mithilfe der REST API zu deaktivieren.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die Projekt-ID
- instance-id: Die Instanz-ID.
HTTP-Methode und URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
JSON-Text anfordern:
{
"settings" : { "insightsConfig" : { "queryInsightsEnabled" : false } }
}
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2021-01-28T22:43:40.009Z",
"operationType": "UPDATE",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
Query Insights für die Cloud SQL Enterprise Plus-Version deaktivieren
So deaktivieren Sie Query Insights für die Cloud SQL Enterprise Plus-Version:
-
Rufen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen auf.
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie auf Bearbeiten.
- Maximieren Sie im Bereich Instanz anpassen den Eintrag Query Insights.
- Entfernen Sie das Häkchen aus dem Kästchen Enterprise Plus-Funktionen aktivieren.
- Klicken Sie auf Speichern.
Nächste Schritte
- Blog zur Einführung: Datenbankengpässe schneller beheben mit den neuesten Query Insights für die Cloud SQL Enterprise Plus-Version
- Blog: Mit Cloud SQL Insights die Fähigkeiten zur Fehlerbehebung bei Abfragen verbessern
- Video: Einführung in Cloud SQL Insights
- Podcast: Cloud SQL Insights
- Informationen zu Codelabs
- Hohe CPU-Auslastung optimieren
- Hohe Speichernutzung optimieren