ביצועים - drill to the Stored Procedures
יש אצלנו בחור נודניק (נאמר רק שראשי התיבות של שמו הנם א"ל) שכל פעם מתלהב כשאני מראה כמה קל לעשות ניטור בסיסי של ביצועי SQL.
בלוג זה בא כמובן בהמשך לבלוג SQL Server - ביצועים שנתן את הבסיס.
אז הנה הא"ב ל unit test של משפטי SQL או Stored Procedures. חובה לכל מפתח לפני שמספר למישהוא שהוא סיים פיתוח, ובוודאי לפני בדיקות.
- שלב ראשון: הפעילו profiler, אשרו את SQL:BatchCompleted, RPC:Completed , בטלו את שאר האפשרויות
- שלב שני: הקליטו את המערכת וזהו שאילתות הצורכות IO מסיבי (יחסית כמובן), נניח reads > 5000 (פילטר יכול לעזור)
- שלב שלישי: העתיקו את הפקודה ל SSMS, הפעילו Set Statistics IO ON, והריצו
- שלב אחרון: הסתכלו בפלט ובסבירות גבוהה תראו אם יש לכם פעילות לא יעילה מול מסד הנתונים
טוב, ידעתי שתשאלו, איך נדע מה זה פעילות לא יעילה – שני טיפים לפני שתלכו ל DBA:
- הרבה פעולות קריאה על טבלא - בד"כ חסר אינדקס
- הרבה scans על טבלא – בד"כ שדות חסרים באינדקס קיים