PracticU

מאפיינים מרכזיים של MongoDB

בלי כתוביותעם כתוביות
PracticU › קורס NoSQL - MongoDB › מאפיינים מרכזיים של MongoDB
מילון מושגים:
MongoDB - מסד נתונים מסוג NoSQL שמאחסן נתונים כמסמכים בפורמט דמוי JSON, בלי מבנה טבלאי קשיח.
שורת פקודה - ממשק טקסטואלי שבו מקלידים פקודות למערכת ההפעלה ומקבלים תגובה בטקסט, במקום להשתמש בעכבר.
ענן - אספקת משאבי מחשוב כשירות דרך האינטרנט, כמו שרתים, אחסון ותוכנות, במקום להחזיק אותם מקומית.
JSON - פורמט טקסט קריא לייצוג נתונים מובְנים כזוגות מפתח-ערך, נפוץ להחלפת מידע בין שרת ללקוח.
JavaScript - שפת תכנות שרצה בעיקר בדפדפן ומוסיפה אינטראקטיביות לדפי אינטרנט. רצה גם בצד השרת באמצעות Node.js.
רשומה - שורה בטבלת מסד נתונים שמרכזת את כל השדות של פריט אחד, למשל כל הפרטים של לקוח יחיד.
פורט - מספר שמזהה שירות או תהליך מסוים בתוך מחשב, ומאפשר לכוון תעבורת רשת ליעד הנכון. למשל פורט 80 ל-HTTP.
טבלה - מבנה במסד נתונים שמאחסן נתונים בשורות ועמודות. כל שורה היא רשומה וכל עמודה היא שדה.

מאפיינים מרכזיים של MongoDB
סיכום של מאפייני MongoDB שנלמדו עד כה, יחד עם תכנית העבודה בהמשך: התקנה מקומית עם שורת פקודה, ובמקביל עבודה מול Atlas בענן עם Compass. בסוף ההרצאה גם רשימה של פקודות בסיסיות.
המאפיינים
1. מסמכים בפורמט JSON: הנתונים נשמרים כ-documents במבנה JSON פתוח, שאפשר לתשאל גם בפקודות JavaScript ולעבוד איתו מול מערכות חיצוניות.
2. גמישות: כל מסמך יכול להכיל שדות שונים, ואין אילוץ של מבנה אחיד בין הרשומות. לכן הרשומה נקראת document, והמסמכים שבאותו collection יכולים להיות במבנה שונה. הוספת שדה או שינוי בו נוגעים רק למסמך הספציפי.
3. אינדקסים ודחיסה: אפשר ליצור אינדקסים לשיפור ביצועים, ובגלל מבנה ה-JSON אפשר גם לדחוס.
4. עבודה מקבילה: התקנה מקומית של השרת וחיבור דרך Command Line, מול חיבור ל-Atlas (הדאטאבייס בענן) דרך כלי גרפי בשם Compass של MongoDB.
פקודות
- mongod --port מפעיל את השרת עם פורט. פורט ברירת המחדל הוא 27017.
- show dbs מציג דאטאבייסים, ו-use <db> מתחבר לאחד מהם.
- show collections מציג collections, שהם המקבילה לטבלאות.
- mongo --help מציג עזרה מקומית, ואפשר לדפדף עם more. הכי טוב לקרוא את ה-Manual באתר.
- edit פותח את קובץ ההגדרות.
- net start ו-net stop מתחילים ועוצרים את שירות MongoDB.
- db.stats() ב-JavaScript מציג סטטיסטיקות של הדאטאבייס.
אחרי ההרצאה אפשר להסביר מה מייחד מסמכים ב-MongoDB, להתחיל את השירות ולהריץ את הפקודות הבסיסיות להצגת דאטאבייסים ו-collections.
השיעור הבא בקורס: השוואה בין SQL Server לבין MongoDB

פרקי ההרצאה: מאפיינים מרכזיים של MongoDB

  1. 00:00

    מבנה Document גמיש ב-JSON

  2. 00:55

    Document במקום רשומה ב-Collection

  3. 01:47

    אינדקסים ודחיסת נתונים

  4. 02:21

    התקנה מקומית מול Atlas בענן

  5. 02:58

    חיבור גרפי עם Compass

  6. 03:38

    פקודת mongod ופורט 27017

תמלול ההרצאה: מאפיינים מרכזיים של MongoDB

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

  1. 00:02

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

  2. 00:20

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

  3. 00:36

    רשומה יכולה להכיל בעמודה הראשונה את שם העובד ובעמודה השנייה את שם המשפחה ובעמודה השלישית את ה-birthdate, ואילו רשומה אחרת בעמודה הראשונה כבר מכילה את ה-birthdate, מכילה את תאריך הלידה ומכילה עוד מידע אחר ונתונים אחרים.

  4. 00:56

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

  5. 01:29

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

  6. 01:42

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

  7. 01:59

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

  8. 02:12

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

  9. 02:23

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

  10. 02:35

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

  11. 03:04

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

  12. 03:27

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

  13. 03:55

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

  14. 04:19

    show dbs ו-show collections אלו הן פקודות שבהן אנחנו מציגים מהם הדאטאבייסים שלנו,

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

ההרצאה הקודמת: מבנה נתונים ב-MongoDB

ההרצאה הבאה: השוואה בין SQL Server לבין MongoDB

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

  • מאפיינים של המכשיר
  • שליחת מאפיינים לרכיב
  • התקנה של MongoDB
  • וולידציה למספר מאפיינים יחד

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

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