CDC כלי מעולה או טעון שיפור ?!

04/09/2014

תגיות: ,
אין תגובות

CDC נועד בעיקרו לשמש ככלי Auditing (מעקב אחר שינויים).
הפעלתו גורמת להאזין לקובץ ה-Transaction log, הוא עוקב רק אחרי שינויים בטבלאות מוגדרות מראש וכן עמודות הכלי יוצר תבנית של טבלה זהה לזו שנבחרה על ידיכם וכל שינוי ישמר בטבלה זו עם פרטים כגון: סוג הפעולה (מחיקה, הוספה, עדכון) מספרי lsn, והערך כמובן.

כיוון שמדובר במידע היסטורי שהולך וגדל מומלץ להגדיר את שמירת הנתונים על FileGroup שונה.

בגרסת 2005 מיקרוסופט החלה לעשות שימוש בתכונות "לאחר עדכון", "לאחר הוספה" ו-"לאחר מחיקה" שכמעט ענה על הדרישות אך בגרסת SQL SERVER 2008 כבר שיפרו באופן משמעותי את Change Data Capture והוא קיים  בגרסאות Enterprise, Developer, Evaluation editions (לא קיים בכל הגרסאות).

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

רשימת הכלים שעומדים לרשותנו:

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

למה אנו זקוקים לשמור מידע היסטורי ?

  1. לדעת איזה ערך ישן היה לפני כן בתא ומתי בוצע השינוי.
  2. אבטחת מידע בארגון (תיעוד פעולות ושמירת היסטוריה).
  3. נתונים סטטיסטים (לדעת כמה פעולות ומאיזה סוג מבוצעות בטבלה ומתי).

יתרונות המוצר:

  1. כלי מובנה בשרתי 2008 בגרסאות מתקדמות (ראה מעלה).
  2. ניהול פשוט של מערכת ניקוי היסטוריה ישנה, ושליפת מידע היסטורי ע"י שאילתות.
  3. אפשרות לשמור את המידע ב-FG שונה והגבלות נפח היסטורי.

חסרונות / מגבלות של CDC:

  1. ה-Job חייב לעבוד כך ש-SQL Server Agent חייב להיות פעיל.
  2. לא ניתן לבצע פעולת Truncate עקב כך שהנתונים נקראים מקובץ Log).
  3. בטבלה חייב להיות מזהה חד ערכי לקבלת תוצאות אופטימליות.
  4. המערכת לא שומרת פרטים של מי שביצע את השינוי (שם משתמש, כתובת מחשב, שם מחשב) וחבל !

כיצד נפעיל / נבטל את רכיב זה?
ניתן לבצע זאת ע"י פקודות T-sql פשוטות, ראו את הקישור שמסביר בפשטות.
http://msdn.microsoft.com/en-us/library/cc627369.aspx

מעוניינים בהסבר מפורט על הכלי והשימוש בו? כנסו לקישור הבא
https://www.simple-talk.com/sql/learn-sql-server/introduction-to-change-data-capture-%28cdc%29-in-sql-server-2008

ולסיכום חוות דעת אישית

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

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *