2014-06-30

Alerting and Monitoring on SQL Azure

שלום רב
היום אכתוב על נושא של התרעות וכלי ניטור ש Azure נותן לנו כחלק מהמוצר.
(לפני זמן רב כתבתי על כלים חינמיים לניטור, וכן השוותי בין AWS לבין Azure), המוצר עצמו מאד התפתח ואנו עדים לכלי התרעה מובנים במוצר, כלי התרעה מובנים נוצרים על ידי מטריקות מדידה, להלן מטריקות המדידה.
ניגשים למסך של בסיסי נתונים בפורטל בוחרים בסיס נתונים רצוי לוחצים על Monitor, ואז רואים גרפים נחמדים.
בתחתית המסך לוחצים על אפשרות הוספת Metrics.















כאשר בוחרים Metrics רצויים לנו לפי קריטריונים שונים:



ואז במסך הראשי ניתן להוריד או להוסיף מהמסך ומהגרף Metrics רצויים לך על ידי לחיצה על העיגול הקטן:
הנה לפני:


והנה אחרי:

שימו לב לעמודה הכי ימנית
Alert Rules
לחלק מהמדדים ניתן להגדיר התרעה ולחלק מהמדדים לא ניתן להגדיר התרעה, נלך לעמוד על metric שניתן להגדיר עליו התרעה.
ברגע שנעמוד עליו בתחתית העמוד יש כפתור:
Add Rule





ואז בלחיצה נכנסים למסך של 
Define Alert


ממלאים מה שצריך כמו למי לשלוח את ההתרעה מה הגבול שממנה תישלח ההתרעה וכל כמה זמן לבדוק את המערכת.
וזו ההגדרה עצמה:

זהו הגדרנו התרעות. כאשר יגיע הגבול וההתרעה תיקפוץ - גם יישלח מייל וגם בפורטל יסומן בסיס הנתונים שיש לו התרעה - עד לשיחרור ההתרעה.
הנה metric שמוגדרת לו התרעה:



והנה כאשר נכנסים למסך של בסיס הנתונים  Active alert מסומן ובולט לעין:


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



כדי לנהל את כל ההתרעות כולן יש מסך מיוחד שנקרא:
Management Services דרכו ניתן להגיע לכל ההתרעות לערוך אותן לשחרר אותן ולראות היסטוריה שלהן:




אם נלחץ על ההתרעה עצמה נראה מה קרה:



עד כאן הכל ברור אני מקווה.
מנגנון ההתרעות קיים לא רק על בסיסי נתונים - להיפך דווקא בבסיסי נתונים הוא עני ב Metrics שניתן לכמת לכדי התרעה.
ברוב הקומפוננטות האחרות יש לו עושר רב יותר של התרעות

נסו ותהנו.
פיני





2014-06-02

Compression in SQL Azure - Yes we have!!!

שלום לכולם
אתמול בלילה במקרה קראתי את הבלוג של Bob Beachemin שהוא חלק מ SQLSkills ושם הוא הזכיר בחצי משפט על זה שעכשיו יש דחיסה בבסיסי הנתונים בענן - לא האמנתי למראה עיניי.
ישר רצתי לבדוק ואכן זה עובד. אז ראשית התודות ל - @bobbeach

שאגב לקח לי בשניה האחרונה את הפוסט על Extended Events ב Azure.

דחיסה.... כן כן סוף סוף יש תמיכה בדחיסה - אפשר לדחוס טבלאות ואינדקסים ובכך לצמצם את גודל בסיס הנתונים ולהפחית עלויות.
כמובן יש מחיר של cpu, ועוד ההשפעות של דחיסה  - אולם יש דחיסה אפשר להקטין בסיסי נתונים ולשלם פחות ועדיין לקבל ביצועים.
פיצ'ר זה הוא סנונית ראשונה של פיצ'רים שלא היו עד היום ומנעו פעילות טובה בענן - הייתי צריך לעשות מיגרציה של בסיס נתונים ותמיד מנע אותי הענן מלהעלות כמו שהוא את בסיס הנתונים כי היתה לי דחיסה על הרבה בסיסי נתונים.

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

אתמול בצהריים הרצתי פקודה זו על בסיס הנתונים של סביבת ה QA של הלוגים הללו:

ALTER TABLE [dbo].[ExternalLogs] REBUILD PARTITION = ALL 
WITH (DATA_COMPRESSION = PAGE)
GO 

כמובן - סוף סוף - לא הייתה שגיאה שזה לא נתמך והפקודה רצה והנה התוצאה:
בסיס הנתונים ירד מ 22.69 - ל 8.44
MB.



כרגע אני עסוק בהורדת גודל הטבלאות הגדולות - שזה נושא יותר בעייתי בגלל אורך טרנזקציות בענן אבל זה נושא לדיון אחר.

פיני