Frage

Der Datenbank-Tuning Advisor empfiehlt, dass ich ein paar Statistiken in meiner Datenbank zu erstellen. Ich bin so etwas wie ein SQL n00b, so war dies das erste Mal, dass ich über ein solches Geschöpf jemals kommen würde. Der Eintrag in MSDN war ein wenig stumpf - könnte jemand erklären, was genau dies tut, und warum es eine gute Idee,

War es hilfreich?

Lösung

Cost Based Abfrageoptimierung ist eine Technik, die Histogramme und Zeilenanzahl verwendet heuristisch die Kosten abzuschätzen die Abfrage-Plan auszuführen. Wenn Sie eine Abfrage auf SQL Server einreichen, wertet sie es und erzeugt eine Reihe von Abfragepläne , für die es nutzt Heuristiken, die Kosten abzuschätzen. Es wählt dann die günstigste Abfrage-Plan.

Die Statistiken werden von den Abfrage-Optimierer verwendet, um die Kosten der Abfragepläne zu berechnen. Wenn die Statistiken fehlen oder es ist nicht mehr aktuell keine korrekten Daten haben den Plan zu schätzen. In diesem Fall kann es Abfragepläne erzeugen, die mäßig oder stark suboptimal sind.

SQL Server (in den meisten Fällen) generiert Statistiken über die meisten Tabellen und Indizes automatisch, aber Sie können diese oder Kraft Auffrischungen ergänzen. Die Abfrage-Assistent hat einige fehlende Statistiken vermutlich gefunden oder identifiziert schließt sich innerhalb der Abfrage, die Statistiken für sollte hinzugefügt werden.

Andere Tipps

Die Statistiken werden vom Optimierungsprogramm verwendet, um zu bestimmen, ob eine bestimmte Index für Ihre Abfrage zu verwenden. Ohne Statistiken, wird der Optimierer eine Möglichkeit hat, nicht zu wissen, wie viele Ihre Zeilen einen bestimmten Zustand entsprechen, so dass es für den „viele Zeilen“ Fall zu optimieren zu haben, das weniger als optimal sein könnte.

Auf den Punkt gebracht, es bereitet Ihre Datenbank effektiv zu arbeiten. Durch vorbereitet Statistik mit, die Datenbank kennt (bevor es einen Ausführungsplan, um herauszufinden, braucht), was seine effizienteste Weg sein dürfte.

Grundsätzlich hält nur SQL aktualisiert, mit welcher Art der Indizierung Sie haben, Zeilenanzahl, etc. Dies hilft bessere Schätzung SQL, wie Sie Ihre Abfragen auszuführen. die Statistiken zu halten aktualisiert ist eine gute Sache.

Von der BOL ...

  

Erzeugt ein Histogramm und die damit verbundenen   Dichtegruppen (Sammlungen) über die   geliefert Spalte oder eine Gruppe von Spalten von a   Tabelle oder indizierte Sicht. String Zusammenfassung   Statistiken werden erstellt, auf auch   Statistiken gebaut auf char, varchar,   VARCHAR (max), nchar, nvarchar   nvarchar (max), Text und Ntext   Säulen. Das Abfrageoptimierungsprogramm verwendet diese   statistische Informationen zur Auswahl der   effizientesten Plan für das Abrufen oder   Aktualisierungsdaten. Up-to-date Statistiken   erlauben dem Optimierer genau   beurteilen die Kosten verschiedener Abfrage   Pläne, und wählen Sie einen qualitativ hochwertigen Plan.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top