SQL Server-Betrieb

SQL-Server-Statistiken und Kardinalitätsschätzung

Der Optimierer wählt Joins, Zugriffsmethoden und Speicherzuteilungen anhand geschätzter Zeilenzahlen. Weichen Schätzungen stark ab, wird ein vernünftiger Plan teuer.

SQL-Server-Statistiken und Kardinalitätsschätzung

Der Optimierer wählt Joins, Zugriffsmethoden und Speicherzuteilungen anhand geschätzter Zeilenzahlen. Weichen Schätzungen stark ab, wird ein vernünftiger Plan teuer.

Was gemessen werden sollte

Vergleichen Sie geschätzte und tatsächliche Zeilen am ersten wichtigen Operator. Prüfen Sie Histogramm, Änderungszähler, Stichprobe, aufsteigende Schlüssel, korrelierte Prädikate und verdeckte Spaltenwerte.

Praktisches Vorgehen

Lassen Sie automatische Statistiken aktiv, aktualisieren Sie wichtige Statistiken bei relevanten Datenänderungen, verwenden Sie gefilterte oder mehrspaltige Statistiken für konkrete Schieflagen und schreiben Sie ungeeignete Prädikate um.

Was vermieden werden sollte

Führen Sie nicht jede Nacht für jede Statistik FULLSCAN aus, nehmen Sie nicht an, dass ein Index-Rebuild alle Statistiken aktualisiert, und überdecken Sie Fehler nicht nur mit Hinweisen.

Betriebliches Ergebnis

Statistikpflege sollte Datenänderungen und Lastempfindlichkeit folgen, nicht einem universellen Kalender.

Checkliste für die Produktion

Erfassen Sie eine Ausgangsbasis und definieren Sie die erwartete Verbesserung. Testen Sie mit repräsentativen Daten und realistischer Parallelität. Sichern Sie die ursprüngliche Einstellung oder den Plan, bereiten Sie einen Rollback vor und überwachen Sie die nächste normale Lastspitze.

Wenn Sie diese Methode auf eine konkrete SQL-Server-Umgebung anwenden möchten, nutzen Sie das Frageformular unten und nennen Sie SQL-Server-Version, Datenbankgröße, Lastprofil und bereits erfasste Nachweise.

Frage zu diesem Artikel

Haben Sie eine Frage zu diesem Thema?

Beschreiben Sie, was Sie bewerten oder wo Sie nicht weiterkommen. Wir antworten mit einer praktischen Empfehlung.

Inquiries are not enabled in this preview.

Eine Frage zu diesem Artikel stellen