הצטרפו לקבוצות שלנו לקבלת עדכונים מרוכזים פעם בשבוע:

ווטסאפ:
http://wa.dwh.co.il
טלגרם:
http://telegram.dwh.co.il

Cardinality של שתי טבלאות

More
18 years 9 months ago #380 by Administrator
שלום לכולם,

הרבה פעמים עולה השאלה, איך הBO קובע את הCardinality בין טבלאות בJoin.

התשובה היא כזאת:

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

דוגמא:

ניקח מקרה קלאסי של Star Scheme:

טבלת Fact המחוברת לטבלת Dim. בואו נניח כי בטבלת הFact יש 10000 רשומות ובטבלת הDim 100 רשומות.

ספירה לבד של הטבלאות הללו תתן 100 ו10000 בהתאמה, אך כמובן שאין זה מספיק משום שיתכן שאין קשר בכלל בין הטבלאות. לכן count על הjoin שיראה מספר הקטן או שווה ל10000 יעיד כי אכן מדובר בקשר של אחד לרבים.

בקשרים יותר מסובכים, BO יקבל ספירות שלא ידע להתמודד איתם  כך שהCardinality לא ברור. במקרה שכזה נקבל unknown cardinality.

Please התחברות to join the conversation.

Moderators: Yoav
Time to create page: 0.205 seconds