1 / 39

File Systems

תרגול 1. File Systems. Motivation & SQL ( Structured Query Language). SQL interface. Query evaluation engine :. Parser. Optimizer. Operator Evaluator. Plan executor. Transaction manager. Recovery manager. File and access methods. Buffer manager. Lock manager. Disk space manager.

Download Presentation

File Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. תרגול 1 File Systems Motivation & SQL (Structured Query Language)

  2. SQL interface Query evaluation engine: Parser Optimizer Operator Evaluator Plan executor Transaction manager Recovery manager File and access methods Buffer manager Lock manager Disk space manager Disk Data files Index files System catalog

  3. אי תלות במודל הנתונים יתרון חשוב של השימוש במערכת לניהול מסדי נתונים: אי תלות במודל הנתונים. מושג ע"י שלוש רמות של הפשטה: רמה פיסית אי תלות באחסון הפיזי מעבר לכאן תאור המידע לפי המודל שלנו (מאורגן לפי סכימה רלציונית) רמה לוגית אי תלות בארגון הלוגי מעבר לכאן מבטי משתמש (views)

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

  5. עמודה, תכונה, שדה, אטריביוט טבלה, רלציה שורה, רשומה, n-יה SQL: מושגים סכמה צבע גיל חיה סגלגל ורוד ורוד 23 חתול שחור

  6. דוגמא של מסד נתונים מסד נתונים של ספרייה • Ordered • Cust_Id • Book_Id • Order_Date • Books • Book_Id • Book_Name • Year • Max_Time • Faculty • Pages • Customers • Cust_Id • Cust_Name • Faculty • Borrowed • Cust_Id • Book_Id • From_Date • To_Date DBMS - 236363, שפות שאילתה: SQL

  7. פירוט הטבלאות • Customers(Cust_Id, Cust_Name, Faculty) • Cust_Id: (ייחודי לכל לקוח)מס' זהות של לקוח • Cust_Name:שם לקוח • Faculty: שם פקולטה

  8. הטבלה Customers

  9. פירוט הטבלאות (המשך...) • Books(Book_Id, Book_Name, Year, Max_Time, Faculty, Pages) • Book_Id: מס' מזהה (ייחודי לכל עותק) • Book_Name: שם הכותר • Year: שנת הוצאה • Max_Time: משך השאלה מקס' אפשרי (בימים) • Faculty: שם פקולטה • Pages: מס' עמודים

  10. הטבלה Books

  11. פירוט הטבלאות (המשך...) • Ordered(Cust_Id, Book_Id, Order_Date) • Cust_Id: מס' זהות של לקוח • Book_Id : מס' מזהה (ייחודי לכל עותק) • Order_Date: תאריך הזמנת הכותר

  12. טבלתOrdered

  13. פירוט הטבלאות (המשך...) • Borrowed(Book_Id, Cust_Id, From_Date, To_Date) • Book_Id: מס' מזהה של ספר • Cust_Id: מס' זהות של לקוח • From_Date: תאריך השאלת הספר • To_Date: תאריך החזרת הספר

  14. טבלת Borrowed

  15. שאילתות ב-SQL: SELECT SELECT column1, col2, f(col3, col4), … FROM table;

  16. דוגמא • דוגמא: שליפת כל שמות הספרים ומספר העמודים בכל ספר: SELECT Book_Name, Pages FROM Books; Books:

  17. דוגמא - תוצאה SELECT Book_Name, Pages FROM Books:

  18. שליפת כל השדות לשליפת כל השדות, משתמשים בתו "*" (כוכבית). דוגמא: שליפת כל השדות של כל הספרים: SELECT * FROM Books;

  19. דוגמא - תוצאה SELECT * FROM Books:

  20. בחירת חלק מהרשומות Where - • האופציה WHERE condition מאפשרת לבחור רק חלק מהרשומות. • דוגמא: שליפת שמות כל הספרים שהוצאו אחרי השנה 1990: SELECT Book_Name FROM Books WHERE Year > 1990;

  21. דוגמא - המשך SELECT Book_Name FROM Books WHERE Year > 1990 Books:

  22. דוגמא - תוצאה SELECT Book_Name FROM Books WHERE Year > 1990 :

  23. WHERE (המשך...) • תנאים יותר מורכבים: • שימוש בסימני היחס: >, =, <, <>, =< ... • שימוש בקשרים לוגיים: AND, OR, NOT. • דוגמא: שליפת שמות כל הספרים שהוצאו בין השנים 1990 ו- 2000: SELECT Book_Name FROM Books WHERE Year >= 1990 AND Year <= 2000;

  24. דוגמא - המשך SELECT Book_Name FROM Books WHERE Year >= 1990 AND Year <= 2000; Books:

  25. דוגמא - תוצאה SELECT Book_Name FROM Books WHERE Year >= 1990 AND Year <= 2000 :

  26. בחירה מרשימה של ערכים • דוגמא: שליפת כל שמות הספרים שהוצאו בשנים 1992, 1995 או 1999: SELECT Book_Name FROM Books WHERE Year=1992 OR Year=1995 ORYear=1999;

  27. השמטת כפילויות - DISTINCT • האופציה DISTINCT משמיטה את הרשומות הכפולות מתוצאת השאילתא. • דוגמא: שליפת כל שמות הספרים ושנות ההוצאה, ללא חזרות. SELECT DISTINCTBook_Name, Year FROM Books;

  28. דוגמא - המשך SELECT DISTINCTBook_Name, Year FROM Books; Books:

  29. דוגמא - תוצאה ללא DISTINCT אחרי DISTINCT

  30. מיון - ORDER BY • ORDER BY : מיון של הרשומות הנשלפות על פי הערכים של שדות או ביטויים נתונים. • דוגמא: שליפת כל פרטי הספרים ממוינים לפי שנת ההוצאה: SELECT * FROM Books ORDER BY Year;

  31. דוגמא - תוצאה SELECT * FROM BooksORDER BY Year; SELECT * FROM Books;

  32. מיון בסדר הפוך -DESC SELECT * FROM Books ORDER BY Year DESC;

  33. מיון לפי כמה ביטויים • מיון ראשוני ומשני. • דוגמא: שליפת פרטי הספרים ממוינים לפי שנת ההוצאה , ולפי מספר העמודים (בין הספרים שהוצאו באותה שנה). SELECT * FROM Books ORDER BY Year, Pages;

  34. מיון (המשך...) • ניתן לציין את מס' השדה שלפיו יש למיין. • דוגמא: שליפת פרטי הספרים ממוינים לפי השדה השלישי: SELECT * FROM Books ORDER BY 3;

  35. פונקציות סטטיסטיות • ב- SQL ישנן הפונקציות הסטטיסטיות הבאות: • MIN – מינימום • MAX – מקסימום • AVG – ממוצע • SUM – סכום • COUNT – מספר הרשומות • כל אחת מפונקציות אלה פועלת על קבוצת ערכים ומחזירה ערך אחד.

  36. דוגמא • דוגמא: חשב את מספר העמודים הממוצע והמקסימלי בין כל הספרים: • פתרון: SELECT AVG(Pages), MAX(Pages) FROM Books;

  37. דוגמא – המשך SELECT AVG(Pages), MAX(Pages)FROM books;

  38. דוגמא – המשך SELECT AVG(Pages), MAX(Pages)FROM books;

  39. שאילתות ב-SQL מבנה כללי של שאילתא SELECT [ALL | DISTINCT] {[table.]* | expr [alias], exp [alias], …} FROM table [alias], table [alias], … [WHERE condition] [GROUP BY expr, expr, … [HAVING condition]] [{INTERSECT | EXCEPT | UNION | UNION ALL } SELECT …] [ORDER BY expr [ASC | DESC ], expr [ASC | DESC],…];

More Related