Feed
Contact
XING
LinkedIn
Twitter
ICQ
meebo.com

MS SQL Server - Query's tunen

by Roland Schumacher alias GENiALi 5. April 2007 -- 243 Wörter  -- 64 mal gelesen
Dieser Beitrag ist mir was wert:  

Programmieren ist ja nur so ein Hobby von mir. Trotzdem
mache ich relativ viel in der Firma. Es gibt in zwischen massig
Sachen die von mir sind. Die meisten Programme greifen dabei
auf eine SQL DB zu.

In den letzten Wochen häuften sich immer mehr die Timeout's bei
Abfragen. Es gab diverse Tools die wollten nicht mehr recht. Man musste
immer öfters zwei bis dreimal aktualisieren bis ein Resultat da war.

Heute kümmerte ich mich mal darum.

Dazu habe ich auf dem SQL Server den SQL Profiler angeschmissen.
Dort gibt es ein "SQLProfiler Tuning" Template. Ich lies mir nur die
Abfragen anzeigen die länger als 1000ms dauerten. Zu meiner Überraschung
gab es von denen sehr viele. Was mich auch überraschte, sie kamen alle
aus meinen Applikationen. :-(

OK. Dann nahm ich das SQL Query einer Abfrage die über 30'000ms dauerte.
Ich lies die im SQL Query Analyzer laufen und schaute mir den
Ausführungsplan an. Der sagte mir allerdings nicht viel.

Unter dem Menüpunkt Abfrage fand ich den Indexoptimierungs-Assistent.
Den lies ich dann mal laufen. Zu meiner Überraschung meinte der, ich könnte
die DB um 99% schneller machen. Das glaubte ich nicht und hab sicherheitshalber
in einem Forum nachgefragt. Die meinten, nur zu.

Also habe ich den/die vorgeschlagenen Index erstellen lassen und danach die Abfrage
nochmals ausgeführt. Vorher 30'000ms und nachher ........

Nur noch 16ms. Jap, nur noch 16ms. Kein Timeout sondern flups und die Daten
waren da.

Jetzt nehme ich mir alle > 1000ms vor und mache dasselbe. Die
Resultate sind einfach überwältigend.

Tags:

Entwicklung

Comments are closed

Übersetzen

Diverses

Seitwert

Locations of visitors to this page

Rating
Excellent - 97%overlay Icon

Statistik