DCSIMG
עמוד הבית| חבילות השירות שלנו| חומר חופשי| צור קשר
SQL Server – ביצועים - בלוג היועצים של מיקרוסופט ישראל

בלוג היועצים של מיקרוסופט ישראל

SQL Server – ביצועים

הבלוג הנוכחי אינו מיועד ל DBA, הוא מיועד לך, מפתח, איש בדיקות, מנהל מערכת וכל מי שהביצועים יקרים ללבו. הבלוג נכתב לאחר מספר פגישות עם אנשים טובים שלא היו מודעים לקלות מוניטורינג בסיסי.

איך אני יודע מה מצבי – יש שני כלים פשוטים, שהפעלת כל אחד תתן חצי מהניטור הדרוש. כמובן שאם תיישמו את ההנחיות שלי תקבלו במרבית המקרים רק את כיוון הפתרון – אבל – סביר שתדעו לאן להמשיך.

Performance Monitor

הפעילו את הכלי, ונטרו CPU (רצוי נמוך), disk queue length (רצוי עד 2), SQL Dead Locks (אפס), SQL timeout > 0 (אפס), Cache hit Ratio (מעל 90% ).

מה נלמד מהתוצאות:

1. בעיות דיסק יצביעו על צורך בשנוי מארז האחסון או שינוי קוד ואינדקסים (ראו בהמשך)

2. CPU גבוה – נדיר יחסית, תבדקו שאכן הקוד שלכם גורם לעומס – אולי השרת עמוס ממילא...

3. Timeout & Deadlock – פה תצטרכו כנראה עזרה מ DBA מנוסה

4. Cache Hit Ratio נמוך – ייתכן וצריך עוד זכרון למחשב אך גם שינוי קוד ואינדקסים בא בחשבון

SQL Server Profiler

1. הפעילו את הכלי, אם אין לכם הרשאות – סביר שה DBA ייתן לכם אותן לפחות בסביבות שאינן ייצור.

2. נתרו את RPC Completed ואת SQL Statement Completed בזמן עומס או עבור שאלתות איטיות

3. נסו לזהות שאילתות שלוקחות זמן רב ו/או הרבה קריאות

4. נסו לאתר שאלתות שרצות הרבה פעמים – מליון שאילות של 20ms מזיקות יותר (פי 100 לערך) מ 20 שאילות של 10 שניות

5. אם זיהיתם שאילתות "מזיקות" – אתם ממוקדים – יש לטפל בשאלתות שזוהו – אבל זה כבר לא לבלוג הזה

לסיכום:

שימוש פשוט בשני הכלים יביא אותכם למצב בו במקום לומר יש לי בעיית ביצועים, תוכלו לומר השרת סובל מבעיה בתחום ה XXX או סט השאלתות הזה נדרש לשיפור. ברור כי תוכלו לקבל פתרון טוב ומהיר אם תבואו אם בעיה ממוקדת – שלא נדבר על האפשרות שתפתרו אותה לבד.

תוכן התגובה

Ella Maschiach כתב/ה:

Brilliant post – thank you!

# June 3, 2009 11:04 AM
שלח תגובה

(שדה חובה)  

(שדה חובה)  

(אופציונלי)

(שדה חובה) 

Please add 4 and 5 and type the answer here:


Enter the numbers above: