הסבר על שאלה 8
- class928417
- Oct 26, 2014
- 1 min read
*** מייל מרן ****
היי,
תרגילים 8 + 8.2 +8.3 עוסקים בטעינת טבלת FactPurchase.
בתרגיל 8:
לצורך הבאת הנתונים, אין כאן תרגול של הבאת נתונים בצורה אינקרמנטלית, כלומר את הדלתא מאז הטעינה הקודמת, אלא מבקשים להביא את כל הנתונים שבטבלאות המקור.
כמו כן, מבוקש ביצוע JOIN בין טבלת ה HEADER לטבלת ה DETAIL כדי להביא את כל השדות הרצויים לטבלת ה FACT שב DWH.
ב 8.2 מטפלים בטעינה ל DWH מה STG. הפקודה המתאימה היא MERGE.
ב 8.3 מטפלים ב RI מול טבלת DimVendor - טבלת "ספקים". כרונולוגית, PACKAGE זה ירוץ, ברוב במקרים, לפני זה של 8.2.
לא מדובר כאן בתחליף ל 8.2, אלא בפעולה נוספת.
מה ה RI הזה אומר?
כמו שכתוב בשאלה, רוצים למנוע מצב בו ישנה רשומת FactPurchase שיש בה VendorID שהוא FK, וה Vendor הזה לא קיים בטבלת המימד שלו- DimVendor
לכן, מכניסים רשומת dummy לDimVendor עם ערכי Default, בדיוק כמו שהסברנו בכיתה.
בפתרונות שלכם קצת "סיבכו" את התשובה כאשר הגדירו משתני T-SQL בפקודת DECLARE עם ערכי ברירת המחדל (default) ואז השתמשו בהם. אולי זה קצת מסורבל במבט ראשון, אבל מבחינה של סדר, ארגון ותכנות זה יותר נכון - תחשבו למה.
קדימה, תשאלו שאלות כי זה נושא חשוב.
רן.
Recent Posts
See Allנוספו MDX עבור הפרויקט למי שמתקשה. נמצא בלשונית "project" שאול
הי, הוספתי בחלק של הפרויקט באתר מספר דוגמאות לתהליכים שונים משלב ה MRR וה - STG. אעדכן תוך כדי התקדמות הפרויקט. במידה ויש משהו שאתם...
המרצה במודול החדש ( מודול הפרויקט) פתח קבוצת פייסבוק לכיתה שלנו. הנה הלינק : https://www.facebook.com/groups/JBH9284.17/ שם הקבוצה :...
Comentarios