PracticU

Mirror & Staging

בלי כתוביותעם כתוביות
PracticU › קורס SSIS › Mirror & Staging
מילון מושגים:
מפתח זר - עמודה בטבלה שמפנה למפתח הראשי בטבלה אחרת, ובכך יוצרת קשר בין הטבלאות.
מפתח ראשי - עמודה או צירוף עמודות שמזהים באופן ייחודי כל שורה בטבלת מסד נתונים.
לוג - רישום מתועד של אירועים ופעולות שמתרחשים במערכת או בתוכנה, המשמש למעקב ולאיתור תקלות.
סכמה - המבנה הלוגי של מסד נתונים: הגדרת הטבלאות, העמודות, הסוגים והקשרים ביניהם.
מחסן נתונים - מסד נתונים מרכזי שמרכז נתונים ממקורות שונים לצורך ניתוח ודיווח, ולא לתפעול שוטף.
טבלה - מבנה במסד נתונים שמאחסן נתונים בשורות ועמודות. כל שורה היא רשומה וכל עמודה היא שדה.

Mirror & Staging
גזירת נתונים מדאטאבייס תפעולי לדאטה וויירהאוס לא מתבצעת ישירות, אלא דרך שלבי ביניים. בשיעור הזה מכירים את שני השלבים, Mirror ו-Staging, ומה מבצעים בכל אחד מהם בגישת Best Practice מלאה.
השלבים
1. Extract אל Mirror: מעלים את הנתונים מכל המקורות כמו שהם (as is) לדאטאבייס Mirror, בלי שינוי ובלי ניקוי. אין בו Foreign Key, וכדאי שלא יהיה בו גם Primary Key. אין פעולות DML ואין מניפולציה, והוא שיקוף של המערכת התפעולית.
2. מה Mirror נותן: מקורות כמו קבצים, לוגים ואקסלים עוברים לפורמט אחד של דאטאבייס, ועובדים בנוחות בתוך מקום אחד.
3. Stage: מעבירים את הנתונים מ-Mirror ל-Staging. לעיתים זה לא דאטאבייס נפרד אלא סכמה בתוך ה-Data Warehouse. בכל טעינה עושים drop and create, ואין בו היסטוריה.
4. ניקוי וטרנספורמציה: במעבר ל-Staging מנקים את הנתונים, ממלאים ערכים חסרים ומבצעים טרנספורמציה, עד שהנתונים Ready to Load.
5. טעינה ל-Data Warehouse: מ-Staging טוענים לטבלאות Dimensions ו-Fact.
הדוגמה מ-Worldwide Importers
מיקרוסופט מספקת את Worldwide Importers כדאטאבייס תפעולי וגם את Worldwide Importers DW, עם סיומת DW. בדוגמה Mirror לא נחוץ, כי המקור הוא דאטאבייס, אבל הוא נחוץ כשיש לוגים, קבצים ואקסלים. ה-Staging נוצר בתוך ה-DW, בסכמה בשם Integration, וטבלאותיה שומרות על המבנה הרלציוני ועל השמות המקוריים, עם סיומת Staging, כמו City Staging, Supplier Staging ו-Order Staging. רק הטבלאות שאחריהן הן טבלאות Fact ו-Dimensions.
שימו לב
1. לא בכל סביבה ולא בכל מערכת עושים את כל השלבים.
2. ההבחנה בין השלבים: בין Operational ל-Mirror מבצעים העלאה לדאטאבייס, בין Mirror ל-Staging מנקים ומכינים, ובין Staging ל-Data Warehouse טוענים ל-Dimensions ול-Fact.
אחרי השיעור אפשר להסביר מה מקומו של כל שלב בדרך מהמערכת התפעולית אל טבלאות ה-Fact וה-Dimensions.
השיעור הבא בקורס: יצירת Dimension

פרקי ההרצאה: Mirror & Staging

  1. 00:00

    שלבי Mirror ו-Staging בגזירת נתונים

  2. 01:00

    גזירה לבסיס נתונים Mirror

  3. 01:56

    טעינה לשלב ה-Stage

  4. 02:34

    Drop and Create ללא היסטוריה

  5. 03:11

    טרנספורמציה וניקוי הנתונים

  6. 03:46

    סיכום התהליך מקצה לקצה

תמלול ההרצאה: Mirror & Staging

הטקסט המלא של הדקות הראשונות בהרצאה «Mirror & Staging» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:23

    הנושא של השיעור לפנינו היום הוא בסיס נתונים שנקרא מירור ובסיס נתונים תהליך שנקרא סטייג'ינג. שלבים בעת גזירת דאטאבס לתוך הדאטה וייראוס.

  3. 00:37

    השלבים הללו לעיתים ממומשים על ידי דאטאבס, לעיתים ממומשים על ידי טבלאות בתוך דאטאבס אחר, לעיתים ממומשים על ידי פרוצדורות, אבל אלו בעצם שלבים שצריך לעבור דרכם, אם רוצים ללכת על ה-Best Practice בצורה מתודולוגית מלאה, על מנת לגזור נתונים מתוך ה-Operational לתוך

  4. 01:00

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

  5. 01:16

    בתהליך האקסטרקט אנחנו מביאים בעצם את כל הנתונים s is לתוך בסיס נתונים חדש שנקרא לנו בעצם מירור. בסיס הנתונים מירור הוא קודם כל בסיס נתונים הוא דאטאבס כשמו כן הוא, ללא קשרים רלציוניים, אין לנו כאן בעצם No Foreign Key, אנחנו משתדלים גם שלא יהיה לנו Primary Key, אלא מדובר בעצם בבסיס נתונים נקי שבו יש Data Only,

  6. 01:46

    מידע שהוא ללא כל שינוי. אנחנו אפילו לא עשינו No Cleansing, אנחנו לא מבצעים איזשהו ניקוי של המידע, איזושהי השלמת ערכים, אלא מביאים את המידע S-Ease לתוך דאטה בסמירו.

  7. 02:02

    בשלב הבא של הגזירת נתונים, אנחנו לוקחים את תוך בסיס הנתונים מירור וטוענים אותו לתוך השלב הבא, השלב הזה נקרא stage. stage, העלאת הנתונים מתוך המירור לתוך stage.

  8. 02:17

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

  9. 02:36

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

  10. 02:47

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

  11. 02:58

    אנחנו מנקים את הדאטה בעצמו. כאן אנחנו מייבאים את הנתונים עצמם שהם כבר Ready to Load. כאן אנחנו בעצם מבצעים את מה שנקרא, את התהליך עצמו שקראנו לו.

  12. 03:11

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

  13. 03:24

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

  14. 03:44

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

  15. 03:56

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

  16. 04:12

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

  17. 04:31

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

  18. 04:43

    No Manipulation. אין לנו שום מניפולציה של הנתונים, אלא אנחנו מעלים אותם as is, ולכן הבסיס נתונים הזה נקרא מירור, שיקוף של הדאטה כמו שהוא נראה במערכת התפעולית.

  19. 04:56

    לאחר שהעלינו את הדאטה לתוך ה-Mirror, והמידע שלנו כבר נמצא שם ב-Cash זמין מוכן, עכשיו אנחנו כבר צריכים לעשות לו את הניקוי, את ההכנה, את המיפוי של הנתונים עצמם, את המילוי של הנתונים של Not Now או שדות אחרים שאנחנו רוצים למלא.

  20. 05:14

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

לקורס המלא: קורס SSIS אונליין

ההרצאה הקודמת: טבלת SSIS - Lineage

ההרצאה הבאה: יצירת Dimension

הרצאות קשורות מקורסים אחרים

  • יצירת RAID 1 Mirror - על ידי LVM

קורסים נוספים במסלול

  • קורס DBA אפליקטיבי - שפת SQL למתחילים
  • קורס NoSQL - MongoDB
  • קורס BI - ניתוח מסדי נתונים - Qlik Sense
  • קורס Power BI