מידול נתונים הוא תהליך של פיתוח ייצוג ויזואלי של יישום תוכנה שלם או מרכיביו לתקשורת בין הקשרים בין נקודות הנתונים למבנה. זה כרוך בבדיקה מדוקדקת של דרישות היישום ומסד הנתונים שלו וכחיבור בין השניים הנוגעים לפעולות נתוני ליבה - קריאה, כתיבה ועדכון.
מודל נתונים יציב נוצר על ידי הערכת דפוס השימוש של היישום והתאמת סכימת מסד הנתונים איתו. לכן, עיצוב סכמות מעצב את מודל הנתונים שלך. כשמדובר במסד נתונים יחסי, אינך יכול לאכלס את הטבלאות שלך מבלי ליצור את סכמת הטבלאות.
מונחים מרכזיים שכדאי לדעת
לפני שתמשיך קדימה, הנה כמה הגדרות בסיסיות שעליך לדעת:
- אוסף - אוסף הוא מכלול המסמכים ב- MongoDB. זה שווה ערך לטבלה ב- RDBMS.
- מסמך - מסמך הוא מבנה המורכב מזוגות קבצים וערכים. זה שווה ערך לשורה ב- RDBMS.
- סכימת מסד נתונים - תכנון סכמות הוא ארכיטקטורה לוגית וחזותית של מסד נתונים המיועד למערכת ניהול מסדי נתונים (DBMS).
במה שונה דוגמנות נתונים ב- MongoDB?
בזכות הגמישות של NoSQL, אינך צריך ליצור סכימה לפני הכנסת נתונים. הסיבה לכך היא ש- MongoDB תומך בצורה דינמית של סכימת מסדי נתונים. זה מבטל את הצורך לעצב את הסכימה שלך מראש. במקום זאת, כעת תוכל לאחסן את הנתונים ולבצע התאמות בהתאם לאוסף שלך.
ניתן לאחסן סוגי נתונים שונים בשדה הנתון של האוסף ואף להוסיף שדות חדשים, לעדכן ערכי שדות ולמחוק שדות קיימים. תמצא את היתרון האמיתי של גמישות זו כאשר אתה ממפה מסמכים לאובייקט או ישות.
באופן כללי, אוסף ומסמכו עוקבים אחר מבנה דומה. תוכל גם "לאכוף" כללי אימות עבור מסמכי האוסף שלך באמצעות אימות סכמות.
קָשׁוּר: מנועי מסדי נתונים שיש לקחת בחשבון עבור הפרויקט הבא שלך
בעת יצירת מודל נתונים, בדוק כיצד האפליקציה שלך תקשר עם מסד הנתונים. למשל, אם הוא עומד לעבד מסמכים שהוכנסו לאחרונה, אז כדאי להשתמש באוספים מכוסים - אוספים בגודל קבוע התומכים בפעולות תפוקה גבוהה.
באופן דומה, אם היישום שלך יעבוד עם פעולות קריאה לרוב, אתה יכול להגדיר אינדקסים שיתמכו בשאילתות נפוצות ושיפור הביצועים.
באופן מסורתי, אחד השיקולים ביצירת מודל נתונים הוא כיצד לאחסן נתונים קשורים. מאגרי מידע יחסיים משתמשים בטבלאות לאחסון נתונים, כאשר משתמשים במפתחות ראשיים וזרים להגדרת קשרי נתונים.
באופן דומה, צירופים משמשים לגישה והפעלה של פעולות במספר טבלאות. כמי שעבר ל- MongoDB מ- DBMS יחסי, כגון SQL Server, אתה לא מתכוון למצוא צירופים ב- MongoDB. הסיבה לכך היא כי MongoDB מאחסן נתוני אוסף על ידי הפניה לנתונים או הטמעת הנתונים לאוסף.
לכן, אם מודל הנתונים שלך לוקח עשר טבלאות במסד נתונים יחסי, ייתכן ש- MongoDB מאפשר לך לאחד אותו באוסף יחיד.
סוגי מודלים נתונים
כעת, כשתדעו כיצד עובד דוגמנות נתונים ב- MongoDB, בואו נעבור על סוגי מודלי הנתונים הנתמכים על ידי MongoDB. בדרך כלל, זה תלוי במבנה המסמך שלך וביחסי הנתונים של היישום שלך.
מודלים משובצים של נתונים
ניתן להטמיע נתונים במסמך או במבנה יחיד ב- MongoDB. המכונה גם מודלים נתונים מנוורמליים, והוא ממנף את מלוא הפוטנציאל של המסמכים העשירים של MongoDB. לדוגמה, שקול את הדוגמה הבאה: יש לנו אוסף, סטודנטים, המכיל מסמך מאט. במסמך זה, הטמענו שני מסמכים, פרטי יצירת קשר ו כיתה.
{
"_id": "4aad66a4c13bb24f12gh199e",
שם: "מאט",
פרטי קשר: {
טלפון: ”555-555-1234”
כתובת דוא"ל: "[email protected]"
},
כיתה: {
נושא: “CS101”
ציון: “B”
}}
הטמעה מאחסנת פרטים רלוונטיים באותו מסמך או רשומת מסד נתונים. בדרך זו תוכלו למזער שאילתות ועדכונים הנדרשים לביצוע פעולות DB נפוצות.
מתי כדאי להשתמש במודלים של נתונים משובצים? הם שימושיים לשיפור הביצועים של פעולות קריאה. בנוסף, הם יעילים לעיבוד אחזור נתונים של רשומה אחת. בעזרת מודל זה, ניתן להשתמש בפעולת כתיבה אחת לעדכון נתונים קשורים.
עם זאת, יש לזכור משהו: הטמעה מגדילה את גודל המסמך לאחר יצירתו. במקרים מסוימים זה יכול להשפיע על ביצועי הכתיבה ויש גם אפשרות לפיצול נתונים עקב גודל המסמך המתרחב.
לבסוף, באפשרותך לקיים אינטראקציה עם מסמכים מוטבעים באמצעות סימון הנקודות ולעבור אותם בקלות. הנה התחביר:
field.nestedField: ערך
לדוגמא לעיל, תוכל לגשת למסמכים המקוננים שלך על ידי כתיבת השאילתה הבאה:
db.students.find ({פרטי קשר: {טלפון: "555-555-1234", כתובת דוא"ל: "[email protected]"}}). יפה ()
מודלים של נתונים מנורמלים (הפניות)
מודלים של נתונים מנורמלים משמשים לבניית מודלים של יחסים רבים-רבים ורבים-רבים. בעבודה עם מודלים של מסמכים משובצים, יהיו מקרים שתצטרך לחזור על נתונים. זה המקום בו הפניות מועילות - הן מתמודדות עם יתירות. כך נוכל להשתמש בהפניות לדוגמא לעיל.
חילקנו את המסמך היחיד שלנו לשלושה מסמכים ומאז פרטי יצירת קשר ו כיתה יש את הזהות מ מאט מסמך, אתה יכול להתקשר אליהם במידת הצורך.
סטוּדֶנט
{
_תְעוּדַת זֶהוּת:
שם משתמש: "מאט"
}
פרטי יצירת קשר
{
_תְעוּדַת זֶהוּת:
תעודת זהות של המשתמש:
דוא"ל: "[email protected]"
טלפון: ”555-555-1234”
}
כיתה
תְעוּדַת זֶהוּת:
תעודת זהות של המשתמש: ,
נושא: "CS101",
ציון: “B”
}
כפי שאתה יכול לראות, מודלי נתונים מנורמלים מפצלים נתונים למספר אוספים באמצעות הפניות בין האוספים החדשים יותר. אתה יכול לעדכן מסמך יחיד, שיעדכן אוספים אחרים. זוהי דרך יעילה לעדכון נתונים ומשמשת בעיקר כאשר הנתונים שלך עוברים שינויים תכופים.
להלן הזמנים שבהם מודל נתונים מנורמל הוא הבחירה הנבונה יותר:
- עליך לדגמן ערכות נתונים גדולות העוקבות אחר היררכיה מסוימת.
- עליכם לייצג מערכות יחסים רבות-רבות.
- הטמעה תגרום לשכפול נתונים מבלי להועיל לביצועי הקריאה שלך במידה מספקת.
עכשיו אתה יכול לדגמן נתונים ב- MongoDB בעזרת קלות
נכון לעכשיו, אתה יודע כיצד מודלים של נתונים ב- MongoDB שונים מ- DBM יחסיים, במיוחד כשמדובר בסכימה. למדת גם על סוגי מודלי הנתונים ב- MongoDB - מנורמל ומנורמל - ולמד מתי להשתמש בהם.
וזו רק ההתחלה; יש עוד הרבה מה ללמוד כיצד MongoDB יכול לארגן את הנתונים שלך.
אפשרות עריכה היא אחת מתכונות הטוויטר הנפוצות ביותר. אז מדוע החברה לא תאפשר זאת?
קרא הבא
- תִכנוּת
- מאגר מידע
הירשם לניוזלטר שלנו
הצטרף לניוזלטר שלנו לקבלת טיפים טכניים, ביקורות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!
צעד אחד נוסף !!!
אנא אשר את כתובת הדוא"ל שלך בדוא"ל ששלחנו לך זה עתה.