top of page

מושגים חשובים במידול נתונים

  • תמונת הסופר/ת: Datapoint
    Datapoint
  • לפני 8 שעות
  • זמן קריאה 4 דקות

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

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

בפוסט הזה נעשה סדר בכל המושגים המרכזיים של מידול נתונים.



מהו מודל נתונים (Data Model)

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

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

זהו השלד שעליו נבנים כל בסיסי הנתונים וכל מערכת שעובדת עם דאטה.


מודל נתונים

ישויות (Entities)

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

לדוגמה: לקוחות, הזמנות, מוצרים.

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

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

ישויות

קשרים בין ישויות (Relationships)

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

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

קיימים שלושה סוגי קשרים מרכזיים:

קשרי יחיד ליחיד (One to One)

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


קשר יחיד ליחיד

קשרי יחיד לרבים (One to Many)

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

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

קשר יחיד לרבים

קשרי רבים לרבים (Many to Many)

קשר רבים לרבים הוא מצב שבו כל רשומה בטבלה אחת יכולה להיות מקושרת למספר רשומות בטבלה אחרת - ובמקביל גם לכל אחת מהרשומות בטבלה השנייה יכולה להיות יותר מרשומה אחת שמתאימה לה בטבלה הראשונה.

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

האתגר הוא שמודל רלציוני לא מאפשר להגדיר קשרים כאלה ישירות. לכן משתמשים בטבלת ביניים שנקראת טבלה מקשרת (Junction Table), שמפרקת את הקשר לשני קשרי One to Many.


קשר רבים לרבים

תרשים ERD – Entity Relationship Diagram

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



תרשים ERD


מפתחות (Keys)

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

מפתח ראשי (Primary Key)

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


מפתח ראשי

מפתח זר (Foreign Key)

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

מפתח זר

סוגי טבלאות


טבלת מדד (Fact Table)

טבלת מדד (Fact Table) היא הליבה של כל מודל אנליטי, והיא מחזיקה את האירועים העסקיים שאותם אנחנו רוצים למדוד ולנתח: מכירות, הזמנות, קליקים, חיובים, משלוחים ועוד. רובן מכילות כמויות גדולות מאוד של נתונים, בעיקר ערכים מספריים ומפתחות זרים שמחברים את האירועים להקשר העסקי שלהם. טבלת המדד מתעדכנת בתדירות גבוהה והיא זו שמאפשרת לחשב סכומים, ממוצעים, מגמות והשוואות שונות. בלי טבלת מדד מוגדרת היטב, לא ניתן לבצע ניתוחים אמינים או לבנות דוחות מבוססי נתונים בצורה מסודרת.


טבלת מדד

טבלת מימד (Dimension Table)

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


טבלת מימד

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


מודל הנתונים מספק לנו תמונה לוגית של איך הנתונים אמורים להיראות ולהתחבר.

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

לכל טבלה יש מפתח ראשי (Primary Key) שמזהה כל רשומה באופן חד־משמעי.

ישויות יכולות להיות מחוברות זו לזו באמצעות מפתחות זרים (Foreign Keys), שמאפשרים לבנות את הקשרים בין הטבלאות - Relationships.

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

את הטבלאות עצמם נהוג לחלק לשני סוגים: טבלאות מדד (Fact Tables), שמחזיקות את המדדים והאירועים העסקיים, וטבלאות מימד (Dimension Tables), שמספקות הקשר כמו לקוחות, אזורים, מוצרים או זמנים.

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

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


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


 
 
 

תגובות


bottom of page