SQL Server 2005: Optimizing Procedural Code

Kimberly L. Tripp
Blogg: http://www.SQLskills.com/blogs/KimberlyPowerpoint presentation
Ännu en superintressant föreläsning av Kimberly, hon är absolut min favorit bland föreläsarna. Denna session handlade om att optimera sina lagrade procedurer så de fungerar så bra som möjligt i servern. Den berörde inte direkt hur man skriver kod utan den fokuserade på hur sql-servern hanterar frågorna och hur den cachar sin plan på hur den ska exekvera koden på bästa sätt. Det låter ju väldigt bra att den cachar planen så den slipper räkna ut den varje gång, men är det alltid bra? Svaret på den frågan är Nej, det är ofta bra, men ibland kan det ställa till stora prestandaproblem.

Den stora grejen här är att det inte finns några bra regler att följa som säger om man ska tvinga sql-servern att hitta på en ny plan eller inte eftersom planen läggs upp för hela lagrade proceduren och ofta har man ganska komplicerade procedurer. För att man ska kunna ta reda på om detta är ett problem och även om det är ett problem att servern skapar nya planer hela tiden så använder man profiler tillsammans med Query Analyser. Profiler för att hitta information om när det sker en ”recompile” och för att upptäcka när det sker väldigt många läsningar fast det inte borde göra det. Query analyser för att ta reda på vad i proceduren som orsakar detta och för att testa vad som är bäst. Kort sagt, ganska mycket trial and error.

Jag tror att det är ett problem vi har i Isidor med dåligt uppsatta planer och även problem med för många recompiles i onödan och jag hoppas kunna ägna lite tid åt att analysera detta under slutet av året.

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s


%d bloggare gillar detta: