Die Daten sind übertragen, die Anwendung verbindet sich und die ersten Funktionstests waren erfolgreich. Im Tagesgeschäft dauert das Speichern trotzdem länger. Oder der Import schafft sein Zeitfenster nicht mehr, obwohl die neue Umgebung ähnlich viele vCores hat wie die alte.
Für die Untersuchung sind drei Fragen entscheidend: Welcher Vorgang ist langsamer geworden? Was hat sich an seiner Datenbankarbeit verändert? Und an welcher Stelle kommt zusätzliche Zeit hinzu?
Dieser Diagnoseweg hilft Ihnen, diese Fragen nacheinander zu beantworten. Er gilt für SQL Server auf Azure-VMs, Azure SQL Managed Instance und Azure SQL Database. Die Messquellen und Eingriffsmöglichkeiten unterscheiden sich je Plattform; das Vorgehen beginnt bei demselben Geschäftsvorgang.
Der schnellste Einstieg: eine Beobachtung einordnen
Was beobachten Sie? Wählen Sie die passende Karte; sie führt zum ersten Schritt.
In der Anwendung dauert ein Vorgang länger, die einzelnen SQL-Aufrufe wirken schnell
Beginnen Sie hier Schritt 1 und 5: Messgrenze, Anzahl der Aufrufe und Netzwerkweg
Zu Schritt 1 →Einzelne Abfragen sind seit dem Wechsel deutlich aufwendiger
Beginnen Sie hier Schritt 2 und 4: vergleichbare Ausführungen, Pläne und Datenzugriffe
Zu Schritt 2 →Viele Vorgänge werden in der Spitzenzeit langsam
Beginnen Sie hier Schritt 2 bis 4: Lastmenge, Ressourcen und gegenseitige Behinderung
Zu Schritt 2 →Die CPU wirkt unauffällig, Schreibverarbeitung bleibt langsam
Beginnen Sie hier Schritt 3 und 4: Log-/IO-Grenzen, Transaktionen und Blocking
Zu Schritt 3 →Vor allem der erste Aufruf nach längerer Ruhe ist betroffen
Beginnen Sie hier Schritt 5: Verbindungsaufbau, gegebenenfalls Serverless-Resume und Aufwärmen
Zu Schritt 5 →Es gibt kaum Daten aus der Zeit vor dem Umstieg
Beginnen Sie hier Schritt 2: vorhandene Grenzen festhalten und eine heutige Vergleichsbasis schaffen
Zu Schritt 2 →Die Beobachtung bestimmt den Einstieg. Eine Ursache ist damit noch nicht nachgewiesen.
Schritt 1: Die langsame Arbeit genau benennen
Wählen Sie einen konkreten Vorgang: einen Auftrag speichern, eine Liste öffnen oder einen bestimmten Import ausführen. Notieren Sie Beginn, Ende, beteiligte Anwendung und die fachlichen Eingaben. „Die Datenbank ist langsam“ ist als Arbeitsauftrag zu ungenau.
Klären Sie anschließend, welche Zeit gemessen wurde. Die Antwortzeit in der Anwendung kann Verbindungsaufbau, mehrere Datenbankaufrufe, Ergebnisübertragung und weitere Verarbeitung enthalten. Die Laufzeit eines SQL-Statements beschreibt einen anderen Ausschnitt.
- Antwortzeit in der Anwendung: vom Start bis zum Ende des gesamten Vorgangs.
- SQL-Messung: jeweils nur die Laufzeit eines Aufrufs (1, 2, 3).
- Dazwischen: Verbindung, Übertragung und Verarbeitung in der Anwendung. In realen Anwendungen können Abschnitte überlappen.
Wenn ein Vorgang viele Datenbankaufrufe nacheinander ausführt, kann seine Antwortzeit steigen, während die einzelnen SQL-Aufrufe ähnlich schnell bleiben. Umgekehrt kann eine einzige teure Abfrage den größten Teil der Zeit bestimmen.
Halten Sie drei Werte getrennt fest: die Antwortzeit des gesamten Vorgangs, die Anzahl seiner Datenbankaufrufe und die gemessenen Zeiten auf der Datenbankseite. Überlappende oder asynchrone Arbeit muss bei der Zuordnung berücksichtigt werden.
Eine gemessene Differenz zwischen Anwendungs- und Statementzeit ist nicht automatisch reine Netzwerklatenz. Dazu können auch Verarbeitung in der Anwendung, Wartezeit auf eine Verbindung oder weitere Dienste beitragen.
Schritt 2: Einen fairen Vergleich herstellen
Ein Vorher-/Nachher-Vergleich hilft nur, wenn die verglichene Arbeit ausreichend ähnlich ist. Prüfen Sie deshalb:
- Daten und Eingaben: dieselbe fachliche Aufgabe, vergleichbare Datenmenge und relevante Parameterwerte.
- Last: Aufrufe je Zeiteinheit, Arbeitsmix und gleichzeitig laufende Verarbeitung.
- Konfiguration: Quelle und Ziel, Version beziehungsweise Dienstmodell, Kompatibilitätsgrad und wichtige Einstellungen.
- Zeitfenster: gemeinsame Zeitbasis für Anwendung, SQL-Daten und Azure-Metriken; Änderungen und Ereignisse mit Zeitstempel.
- Betriebszustand: regulärer Betrieb, erster Lauf nach Neustart oder Pause, laufende Wartung und andere besondere Ereignisse.
Vergleichen Sie zusätzlich die Anzahl erfolgreicher Abschlüsse und die Fehler. Eine niedrige gemessene Auslastung kann auch entstehen, wenn viele Anfragen vorher scheitern oder auf der Anwendungsseite warten.
Vorher alte Umgebung
- Vorgang
- Auftrag speichern
- Daten und Parameter
- vergleichbare Menge, Werte notiertfehlt
- Aufrufe
- Anzahl je Vorgang gezähltfehlt
- Gleichzeitigkeit
- Arbeitsmix und Parallelläufe notiertfehlt
- Zeitfenster
- gemeinsame Zeitbasisnur ungefähr bekannt
- Betriebszustand
- regulärer Betriebfehlt
Nachher Azure
- Vorgang
- Auftrag speichern
- Daten und Parameter
- vergleichbare Menge, Werte notiert
- Aufrufe
- Anzahl je Vorgang gezählt
- Gleichzeitigkeit
- Arbeitsmix und Parallelläufe notiert
- Zeitfenster
- gemeinsame Zeitbasis
- Betriebszustand
- regulärer Betrieberster Lauf nach Pause Unterschied
Ergebnis einordnen. Beide Karten beschreiben dieselbe Arbeit unter ähnlichen Bedingungen. Erst jetzt lohnt der Blick auf Antwortzeit, erfolgreiche Abschlüsse, Fehler und Aufwand.
Erst den Unterschied klären. Ein erster Lauf nach einer Pause ist kein regulärer Betrieb. Werten Sie ihn getrennt aus oder wiederholen Sie den Vergleich unter gleichen Bedingungen.
Heutigen Vergleich planen. Ohne Vorher-Daten bleibt der Migrationsunterschied offen. Vergleichen Sie heute einen langsamen mit einem unauffälligen Zeitraum, wie unten beschrieben.
Wenn die alte Messbasis fehlt
Sichern Sie die noch verfügbaren Daten und schreiben Sie auf, was sich daraus beantworten lässt. Vorhandene Query-Store-Historie, Anwendungsprotokolle oder frühere Betriebsberichte können helfen. Ihre Aussagekraft hängt von Zeitraum, Erfassung und Vergleichbarkeit ab.
Fehlende Daten lassen sich nicht nachträglich erzeugen. Sie können aber einen heute langsamen Zeitraum mit einem heute unauffälligen vergleichen oder denselben Vorgang kontrolliert vor und nach einer Änderung prüfen. Die Feststellung lautet dann „unter diesen heutigen Bedingungen verbessert“. Eine vollständige Erklärung des ursprünglichen Migrationsunterschieds ist damit noch nicht bewiesen.
Schritt 3: Die Ressourcen im richtigen Rahmen betrachten
Eine Azure-SQL-Umgebung hat mehrere mögliche Leistungsgrenzen. CPU ist eine davon. Auch Datenzugriffe, Logdurchsatz, Arbeitsspeicher oder verfügbare Ausführungskapazität können die Verarbeitung begrenzen.
Wichtig ist die Bezugsgröße: Eine Prozentmetrik bezieht sich auf die Ressource und Grenze, die ihre Definition nennt. Die Auslastung einer Datenbank beschreibt nicht automatisch die Auslastung der physischen Azure-Hardware.
| Plattform | Gemeinsam betrachten | Typischer Prüfpunkt |
|---|---|---|
| SQL Server auf Azure-VM | SQL-Messwerte, Gastbetriebssystem, VM-Metriken und Datenträger | Erreichen VM oder Disks ein IO-/Durchsatzlimit? Passt die SQL-Konfiguration zum bereitgestellten Speicher? |
| Azure SQL Managed Instance | Instanzmetriken, Datenbanklast und SQL-Diagnosedaten | Welche Datenbanken oder Jobs beanspruchen die gemeinsame Instanz, und welcher Ressourcenbedarf fällt zeitlich zusammen? |
| Azure SQL Database | Datenbankmetriken, Leistungsmodell und SQL-Diagnosedaten | Welche einzelne Grenze wird im Problemfenster erreicht, etwa CPU, Daten-IO, Lograte oder Worker? |
| SQL Database im Elastic Pool | einzelne Datenbank und Pool | Wirkt das Limit der Datenbank, das Poollimit oder die gemeinsame Last mehrerer Datenbanken? |
| SQL Database in Hyperscale | Datenbankmetriken, Page-Server-Zugriffe und Log-Erzeugungsrate | Kommen die Seiten aus dem lokalen Cache oder vom Page Server, und bremst die Grenze der Log-Erzeugungsrate die Schreiblast? |
In Hyperscale bezieht sich die Metrik für Daten-IO nur auf den lokalen Cache des Compute-Replikats. Seitenzugriffe auf die Page Server erscheinen dort nicht; Microsoft weist sie in eigenen Spalten von DMVs, in den Laufzeitstatistiken des Query Store und im Ausführungsplan aus. Eine gedrosselte Log-Erzeugung zeigt sich an Wait Types der Gruppe RBIO_RG_*. Ein niedriger Daten-IO-Wert schließt in Hyperscale langsame Datenzugriffe deshalb nicht aus.
Welcher Bedarf fällt im Problemfenster zeitlich zusammen?
- CPUSpielraum
- Daten-IOSpielraum
- Logratenahe der Grenze
- WorkerSpielraum
Schema für ein Problemfenster mit Schreiblast, keine Messwerte. Rechter Rand jeder Anzeige: die Grenze des gewählten Leistungsmodells.
Gemeinsame Last mehrerer Datenbanken teilt sich das Poollimit.
Seitenzugriff bei Cache-Fehltreffer
Log-Erzeugungsrate (Grenze)
Vereinfachtes Schema ohne Messwerte und ohne Füllstände. Die Pfeile zeigen, wohin das Compute-Replikat Seiten anfordert und Log erzeugt.
Azure SQL Database: Datenbankmetriken, Leistungsmodell und SQL-Diagnosedaten gemeinsam betrachten. Welche einzelne Grenze wird im Problemfenster erreicht? Im Schema hat die CPU Spielraum, die Lograte liegt nahe ihrer Grenze.
SQL Server auf Azure-VM: SQL-Messwerte, Gastbetriebssystem, VM-Metriken und Datenträger gemeinsam betrachten. Erreichen VM oder Disks ein IO-/Durchsatzlimit? Passt die SQL-Konfiguration zum bereitgestellten Speicher?
Azure SQL Managed Instance: Instanzmetriken, Datenbanklast und SQL-Diagnosedaten gemeinsam betrachten. Welche Datenbanken oder Jobs beanspruchen die gemeinsame Instanz?
Azure SQL Database: Datenbankmetriken, Leistungsmodell und SQL-Diagnosedaten gemeinsam betrachten. Welche einzelne Grenze wird im Problemfenster erreicht? Im Schema hat die CPU Spielraum, die Lograte liegt nahe ihrer Grenze.
SQL Database in Hyperscale: Seiten kommen aus Buffer Pool, lokalem Cache oder vom Page Server. Im Problemfenster Page-Server-Reads und Wait Types der Gruppe RBIO_RG_* prüfen; Daten-IO % zählt nur den lokalen Cache.
SQL Database im Elastic Pool: einzelne Datenbank und Pool getrennt betrachten. Wirkt das Limit der Datenbank, das Poollimit oder die gemeinsame Last mehrerer Datenbanken?
Achten Sie auf kurze Spitzen und die Aggregation der Metrik. Ein geglätteter Mittelwert über einen langen Zeitraum kann einen kurzen Engpass verdecken. Lesen Sie CPU, IO oder Waits deshalb im selben Problemfenster wie die langsamen Vorgänge.
Bei Schreiblast lohnt die Trennung zwischen Daten-IO und Transaktionslog. Ein Engpass im Logpfad kann Speicher- oder Importvorgänge bremsen, während die CPU noch Spielraum hat. Der passende nächste Schritt ergibt sich aus dem Zusammenhang von Plattformmetriken, SQL-Warteverhalten und betroffenen Vorgängen.
Quellen: Microsofts Baseline-Empfehlung für Azure-VMs, MI-Monitoring und Ressourcenverwaltung in Elastic Pools, zu Hyperscale die Performance-Diagnose für Hyperscale.
Schritt 4: Abfragen und gegenseitige Behinderung prüfen
Hat dieselbe Arbeit nach dem Umstieg mehr CPU, mehr logische Lesezugriffe oder längere Datenbanklaufzeiten? Oder kommt mehr Arbeit gleichzeitig an? Diese Fragen helfen, Ursachen und Folgen zu trennen.
Mit Query Store eine Veränderung nachvollziehen
Query Store kann zeigen, welche Abfragen und Pläne in einem Zeitraum erfasst wurden und wie sich ihre aggregierten Laufzeitwerte verändert haben. Prüfen Sie zuerst, ob die benötigte Historie vorhanden und die Erfassung für Ihre Frage geeignet ist.
Vergleichen Sie für fachlich zusammengehörige Ausführungen:
- Ausführungszahl und Arbeitsmix;
- CPU-Arbeit und logische Lesezugriffe je Ausführung;
- Datenbanklaufzeit und, soweit erfasst, Wait-Kategorien;
- verwendete Pläne und Zeitpunkt einer Veränderung.
Ein neuer Plan ist ein Anlass zur Untersuchung. Ob er die Verschlechterung erklärt, zeigt erst der Vergleich bei passenden Daten, Parametern und Lastbedingungen. Auch Statistiken und Konfigurationsänderungen gehören in diese Prüfung.
Query Store fasst Laufzeitdaten in Intervallen zusammen. Er ist kein vollständiges Protokoll jedes Benutzeraufrufs. Aus einem Intervallmittelwert lässt sich weder der genaue Ablauf eines einzelnen Anwendungsfehlers noch ein korrektes 95. Perzentil aller Benutzerantworten ableiten. Für solche Fragen brauchen Sie geeignete ergänzende Anwendungs- oder Einzelereignisdaten.
Eine Abfrage mit ihrem Plan, drei Intervalle
- Ausführungszahl
- gezählt
- CPU je Ausführung
- aggregiert
- Laufzeitwerte
- aggregiert
- Ausführungszahl
- gezählt
- CPU je Ausführung
- aggregiert
- Laufzeitwerte
- aggregiert
- Ausführungszahl
- gezählt
- CPU je Ausführung
- aggregiert
- Laufzeitwerte
- aggregiert
Ein einzelner Benutzeraufruf mit eigener Antwortzeit oder eigenem Fehler. Keine automatische Eins-zu-eins-Zuordnung zu einem Intervall.
- Mehrere Intervalle zusammenfassen: unterschiedliche Ausführungszahlen berücksichtigen.
- Aus Intervallmittelwerten kein 95. Perzentil der Benutzerantworten ableiten.
Wenn Sie Werte über mehrere Intervalle zusammenfassen, berücksichtigen Sie deren unterschiedliche Ausführungszahlen. Ein einfaches Mitteln der Intervallmittelwerte kann das Ergebnis verzerren. Beim Vergleich separater Systeme ordnen Sie Abfragen über Inhalt und Kontext zu; die numerischen Query- und Plan-IDs allein sind keine belastbare systemübergreifende Identität.
Quelle: Performance mit Query Store überwachen.
Blocking und Transaktionen untersuchen
Auch in Azure können sich Vorgänge durch Sperren behindern. Prüfen Sie im Problemfenster, wer wartet, welcher Vorgang die benötigte Ressource hält und wie lange die betreffende Transaktion offen bleibt.
Eine langsame Transaktion kann die Wartezeit vieler weiterer Vorgänge auslösen. Hohe Auslastung ist dafür keine Voraussetzung. Die Anwendung kann zum Beispiel innerhalb einer Transaktion weitere Arbeit erledigen oder auf die nächste Interaktion warten.
Waits helfen bei der Einordnung. Sie sind wegen paralleler und überlappender Arbeit keine durchgehend addierbaren Stücke der Benutzerantwortzeit. Eine große Wait-Summe ist daher nicht gleichbedeutend mit ebenso vielen Sekunden zusätzlicher Wartezeit für einen einzelnen Benutzer.
Für allgemeine Diagnosewege verweisen wir auf unseren SQL-Server-Performance-Ratgeber. Die Messquellen und Berechtigungen müssen jeweils zur Azure-Plattform passen.
Schritt 5: Netzwerkwege, Startzustand und Fehlererholung prüfen
Viele kleine Aufrufe können zusätzliche Zeit vervielfachen
Wenn die Anwendung am bisherigen Standort bleibt und die Datenbank umzieht, ändert sich der Kommunikationsweg. Für einen großen einzelnen Datenbankaufruf kann das weniger auffallen als für eine Folge vieler kleiner Aufrufe.
Illustratives Rechenbeispiel: Ein Vorgang führt 100 Datenbank-Round-trips seriell aus. Dauert jeder Round-trip durch den veränderten Weg zusätzlich 10 Millisekunden, ergeben sich daraus insgesamt rund eine Sekunde zusätzliche Zeit. Die Rechnung setzt diese seriellen Aufrufe und die angenommene zusätzliche Round-trip-Zeit voraus; sie ist keine Azure-Messung und keine Vorhersage für Ihre Anwendung.
100 serielle AufrufeRound-trips: 100
100 × 10 ms = 1.000 ms zusätzlicher Kommunikationsanteil im Lehrmodell
10 gebündelte AufrufeRound-trips: 10
10 × 10 ms = 100 ms zusätzlicher Kommunikationsanteil im Lehrmodell
Annahme wie im Text: Die Aufrufe laufen seriell, jeder Round-trip dauert zusätzlich 10 ms; beide Zeilen haben denselben Zeitmaßstab. Die Werte sind keine gemessene Azure-Latenz, keine gesamte Antwortzeit und keine garantierte Einsparung. Bündeln kann die SQL-Arbeit und die Semantik eines Vorgangs verändern.
Prüfen Sie die tatsächliche Zahl und Abfolge der Aufrufe. Mögliche Ansatzpunkte sind die Platzierung der Anwendung, das Bündeln von Zugriffen und die Vermeidung unnötiger Wiederholungen. Ob eine solche Änderung fachlich und technisch passt, muss am konkreten Ablauf geprüft werden.
Quelle: Microsofts Tuninghinweise zu häufig kommunizierenden Anwendungen.
Den ersten Vorgang nach einer Ruhephase gesondert ansehen
Verwendet die Umgebung Serverless, prüfen Sie das konfigurierte Skalierungs- und gegebenenfalls Pause-/Resume-Verhalten. Eine automatisch pausierte Datenbank benötigt beim Wiederanlaufen Zeit. Auch das Aufwärmen der Umgebung kann die ersten Vorgänge beeinflussen.
Trennen Sie deshalb die erste Verbindung nach einer Ruhephase vom regulären Betrieb. Prüfen Sie Statusereignisse, Verbindungsversuche und die Anforderungen der Anwendung. Automatische Pause ist nicht für jede Serverless-Konfiguration oder Kombination mit anderen Funktionen verfügbar; für Hyperscale Serverless ist sie zum Stand 27.10.2026 Preview.
In Hyperscale kommt der lokale Cache hinzu. Bei fest bereitgestellter Rechenleistung hält Microsoft den Cache der Hochverfügbarkeitsreplikate vorgewärmt, bei Serverless nicht. Nach einem Wiederanlauf oder Replikatwechsel können die ersten Lesezugriffe deshalb häufiger an die Page Server gehen.
Quelle: Serverless-FAQ von Microsoft.
Wiederholungen sichtbar machen
Eine Anwendung kann einen vorübergehenden Verbindungsfehler abfangen und erneut versuchen, den Vorgang auszuführen. Aus Benutzersicht erscheint dann möglicherweise nur eine längere Antwortzeit. Ohne passende Protokollierung bleiben die Wiederholungen unsichtbar.
Prüfen Sie, welche Fehler auftreten, ob Verbindungen neu aufgebaut werden und wie viele Versuche stattfinden. Wiederholungen brauchen geeignete Grenzen und eine Abstimmung auf den Fehler. Bei Schreibvorgängen muss zusätzlich geklärt sein, ob die vorherige Transaktion bereits wirksam wurde und wie sich eine doppelte Verarbeitung verhindern lässt.
Ein höherer Timeoutwert allein erklärt die Ursache nicht. Er verändert zunächst, wie lange eine Anwendung auf ein Ergebnis wartet.
Quelle: Vorübergehende Verbindungsfehler und Wiederholungslogik.
Schritt 6: Eine Änderung begründen und ihre Wirkung prüfen
Formulieren Sie vor der Änderung eine konkrete Erwartung. Zum Beispiel: „Diese Abfrage benötigt nach der Indexänderung weniger logische Lesezugriffe“ oder „Das Bündeln der Aufrufe verkürzt den betroffenen Anwendungsvorgang bei gleicher Last“.
Legen Sie anschließend fest, wie die Erwartung geprüft wird. Verwenden Sie dieselben fachlichen Vorgänge und ausreichend ähnliche Bedingungen. Vergleichen Sie Antwortzeit, erfolgreiche Abschlüsse, Fehler und den relevanten Ressourcenbedarf. Bei kritischen Abläufen auch die übrige Workload berücksichtigen: Eine Änderung soll nicht nur einen Einzeltest beschleunigen und gleichzeitig andere wichtige Vorgänge ausbremsen.
Eine größere Konfiguration kann als Sofortmaßnahme oder als begrenzter Vergleich helfen. Verbessert sie die Situation, ist damit zunächst ein Effekt unter den getesteten Bedingungen beobachtet. Welche Ressource und welcher Mechanismus die Verbesserung erklären, muss weiter eingegrenzt werden.
Bewerten Sie danach die wirtschaftliche Folge. Bei fest bereitgestellter Kapazität senkt eine effizientere Abfrage die Rechnung erst dann, wenn daraus etwa eine passend kleinere Konfiguration wird. Bei nutzungsabhängigen Modellen gelten deren konkrete Abrechnungsregeln. Eine gemessene technische Verbesserung und eine nachgewiesene Kostenänderung sind zwei getrennte Ergebnisse.
- Beobachtungviele serielle Aufrufe
- HypotheseKommunikationsanteil prüfen
- Änderunggeeignet bündeln
- Vergleichdenselben Vorgang vergleichen
- Verbleibende FrageWelcher Mechanismus erklärt die Wirkung?
Ergebnis des Vergleichs, getrennt festgehalten
Antwortzeit, erfolgreiche Abschlüsse, Fehler und Ressourcenbedarf am selben Vorgang vergleichen.
Bleibt offen, bis eine Kostenänderung nachgewiesen ist, etwa über eine passend kleinere Konfiguration oder die Abrechnungsregeln eines nutzungsabhängigen Modells.
Ihr Befundblatt für den nächsten Prüfschritt
Mit diesen Angaben wird aus „seit Azure langsam“ eine bearbeitbare Untersuchung.
| Feld | Was Sie festhalten |
|---|---|
| Betroffener Vorgang | fachliche Aufgabe, Anwendung, relevante Eingaben |
| Problemfenster | Beginn, Ende und Zeitzone; Vergleichszeitraum |
| Plattform | Azure-VM, MI oder SQL Database; Ausstattung und gegebenenfalls Pool/Serverless |
| Beobachtung | Anwendungszeit, Fehler, erfolgreiche Abschlüsse; konkrete Veränderung |
| Datenbankbeleg | zugehörige Abfragen, verfügbare Pläne, Ausführungszahl und Aufwand |
| Plattformbeleg | relevante Ressourcenmetriken im selben Zeitraum, Skalierungs-/Wartungsereignisse |
| Offene Erklärung | zum Beispiel mehr Round-trips, höherer Aufwand je Ausführung oder Blocking |
| Nächste Prüfung | ein abgegrenzter Test mit erwartetem Ergebnis und Rückweg |
Befundblatt zum Ausfüllen
Bleibt in diesem Browserfenster: Nichts wird gesendet oder gespeichert. Das Blatt ist nicht mit dem Kontaktformular verbunden; kopieren Sie die Angaben bei Bedarf selbst hinein. Bitte keine Zugangsdaten, personenbezogenen Kundendaten oder vollständigen Geschäftsdaten eintragen.
Für eine erste Anfrage reichen die verfügbaren Eckdaten. Produktive Zugangsdaten und vollständige SQL- oder Geschäftsdaten gehören nicht in das Kontaktformular; einen geeigneten Analysezugang stimmen wir gesondert ab.
Häufige Fragen
Die CPU ist niedrig. Ist Azure damit als Ursache ausgeschlossen?
Nein. Prüfen Sie unter anderem Daten-IO, Logdurchsatz, Blocking, Verbindungserholung und die Messung auf der Anwendungsseite. Welche dieser Erklärungen relevant ist, muss aus Ihrem Problemfenster hervorgehen.
Wir haben gleich viele vCores wie vorher. Müsste es gleich schnell sein?
Die Zahl allein beschreibt weder die gesamte Plattform noch das Verhalten der Workload. Speicher, IO, Dienstmodell und Konfiguration können sich unterscheiden. Aussagekräftig ist der Vergleich der konkreten Arbeit und ihrer Ressourcenanforderungen.
Sollen wir zuerst die Ausstattung erhöhen?
Wenn der Betrieb akut gefährdet ist, kann eine abgestimmte Kapazitätsänderung ein sinnvoller Teil der Stabilisierung sein. Sichern Sie möglichst die vorhandenen Belege und dokumentieren Sie den Zeitpunkt. Für eine dauerhafte Empfehlung prüfen Sie, welcher Engpass vorlag und was die Änderung bewirkt hat.
Können wir einfach den alten Ausführungsplan erzwingen?
Ein zuvor günstiger Plan kann ein Ansatzpunkt sein. Seine Eignung muss für die aktuelle Umgebung und relevante Parameter geprüft werden. Auch eine kurzfristige Planmaßnahme braucht Wirkungskontrolle und eine spätere Bewertung ihrer Ursache und Nebenwirkungen.
Query Store enthält die betroffene Zeit nicht. Können wir trotzdem untersuchen?
Ja, mit den vorhandenen Daten und einer klaren Grenze der Aussage. Anwendungsprotokolle, heutige SQL-/Plattformmetriken und ein gezielter Vergleich können den nächsten Schritt ermöglichen. Für erneut auftretende Probleme wird eine geeignete Erfassung vereinbart.
Quellen und Grenzen
Die Abbildungen auf dieser Seite sind Strukturmodelle und Lehrbeispiele. Sie enthalten keine Messwerte aus Azure-Umgebungen oder Kundensystemen; die Round-trip-Rechnung beruht allein auf den genannten Annahmen.
Produktgrenzen ändern sich mit der Zeit; diese Seite gibt den Stand vom 27.10.2026 wieder. Grundlage ist öffentliche Microsoft-Dokumentation; eigene Messungen in Azure-Umgebungen liegen dieser Seite nicht zugrunde. Prüfen Sie für eine konkrete Entscheidung die dann aktuellen Angaben.
Quellen von Microsoft (Dokumentationsstand geprüft am 27.10.2026): Baseline für SQL Server auf Azure-VMs · Managed Instance mit Azure Monitor überwachen · Ressourcenverwaltung in Elastic Pools · Performance mit Query Store überwachen · Tuninghinweise für Azure SQL Database · Serverless-FAQ · Vorübergehende Verbindungsfehler und Wiederholungslogik · Performance-Diagnose für Hyperscale
Gemeinsam aus dem Symptom einen Befund machen
PSG verbindet SQL-Server-Analyse mit dem Blick auf Anwendung und Infrastruktur. Wir helfen Ihnen, vorhandene Daten einzuordnen, eine überprüfbare Erklärung zu entwickeln und die Wirkung einer abgestimmten Änderung zu prüfen.