f3082e3a5befe9f68e409ad6a37828da.ppt
- Количество слайдов: 42
עקרונות מערכות לניהול בסיס נתונים 1
מערכות בסיסיות לניהול נתונים • תו, שדה, רשומה, קובץ • ארגון קבצים: סדרתי, אינדקס סידרתי, אקראי • סוג הגישה לקובץ: גישה סדרתית, גישה ישירה 2
3
מערכות בסיסיות לניהול נתונים • כל תוכנית יישום מטפלת בקובץ אחד או יותר • לתוכנית היישום תלות מוחלטת בצורת האיחסון הפיסית של הנתונים, הניהול והטיפול בהם. • שיתוף נתונים בין יישומים שונים - כמעט בלתי אפשרי • גורם לכפילות בנתונים 4
מערכות לניהול קבצים - File Management System • • 5 משחררת את המפתח מטיפול במבנה הפיסי של הנתונים מספקת כלים ליצירת הקובץ ואחזקתו שגרות סטנדרטיות לגישה לנתונים אשר מהוות חלק מהמערכת לניהול קבצים דוגמא: מערכת VSAM של IBM
מערכות לניהול קבצים - File Management System • תוכניות היישום מכירות את התכונות הפיזיות של הקובץ )מבנה רשומה, מפתחות, שיטת הגישה לקובץ( • שינוי בתכונות פיזיות אלה מחיבות שינוי מקביל בתוכנית היישום 6
7
מערכות לניהול קבצים - File Management System • • 8 3 תוכניות יישום ניגשות לאותו קובץ, ולכן - כל אחת מכילה את הגדרת רשומת הקובץ כל תוכנית יישום מקבלת עותק נפרד של תוכנת המערכת לניהול קבצים אינה מטפלת בקשרים בין הקבצים אלא בקובץ הבודד בלבד
מערכות לניהול קבצים - File Management System • חסרונות - • אמינות הנתונים: ניתן לבטל רשומת מרצה מבלי לעדכן בהתאם את כל רשומות הקורס בהם הוא מלמד • רמת תמיכה נמוכה לשינויים במבנה כל שינוי במבנה הרשומה דורש הנתונים: שינוי בהגדרת הרשומה בכל תוכניות היישום הניגשות אליה - דבר המצריך הידור מחדש 9
מערכת לניהול בסיסי נתונים • בסיס נתונים: אוסף של טבלאות הקשורות ביניהם בקשרים לוגיים המאפשרים את שיתוף הנתונים בין היישומים השונים • בנוסף לטבלאות המכילות את הנתונים מכיל בסיס הנתונים גם אוסף טבלאות המתארות את מבנה בסיס הנתונים עצמו. 01
מערכת לניהול בסיסי נתונים • בד”כ כל טבלה מאוחסנת בקובץ פיזי נפרד • ניתן לאחסן מספר טבלאות באותו קובץ פיזי • ואפילו את כל הטבלאות בקובץ פיזי אחד 11
מערכת לניהול בסיסי נתונים • אי-תלות פיזית ולוגית בין תוכניות היישום לבין מבנה בסיס הנתונים • שלא כבמערכת לניהול קבצים - תיאור הנתונים הנו חלק אינטגרלי מבסיס הנתונים ולא מהווה חלק מתוכנית היישום 21
מערכת לניהול בסיסי נתונים טבלאיים RDBMS Relational Data Base Management System • תוכנה ייעודית המאפשרת לתוכנית יישום לגשת בנוחות וביעילות אל הטבלאות ולבצע את הפעילויות הדרושות • תומכת ב- 3 פונקציות בסיסיות: ) (Data Definition הגדרת הנתונים טיפול בנתונים ) (Data Manipulation ( אבטחת אמינות (Data reliability 31
טיפול בנתונים Data Manipulation • גישה לבסיס הנתונים מתוך תוכניות היישום או באופן ישיר ע”י המשתמש וביצוע: שליפת נתונים הצגת נתונים לפי חתכים שונים עדכון טבלאות הוספת שורות חדשות לטבלה ביטול שורות קימות 41
אבטחת אמינות • הבטחת אמינות בסיס הנתונים: ברמת הטבלה הבודדת ברמת הקשרים בין הטבלאות • התוצאה: הגדלת אמינות המידע 51
16
17
סכימה גלובלית Global Schema • • • 81 מתארת את הטבלאות עמודות בכל טבלה טיפוס הנתונים ) (Data Type של כל עמודה מפתח עיקרי )) Primary Key קשרים לוגיים בין טבלאות אילוצים על ערכים בטבלה
שפה להגדרת נתונים DDL Data Definition Language • • • • 91 אוסף פקודות להגדרת הסכימה הגלובלית השפה מאפשרת: הגדרת טבלאות, עמודות, טיפוס נתונים, מפתח עיקרי תחומי ערכים מותרים קשרים לוגיים כללי הגנה מזניקים ) (Triggers המופעלים בתנאים מסוימים ומבצעים פעולות מסוימות
אוסף פקודות להגדרת סכימה 02
תת-סכימה ) / (Sub Schema טבלאות מדומות )) View • חלק מבסיס הנתונים הנגזרים על פי הצרכים המיוחדים של המשתמש או של תוכנית היישום • מאפשרת ליצור לכל משתמש נקודת מבט ) (View ייחודית המותאמת לצרכיו • הטבלה המדומה : יכולה להכיל רק חלק מהשורות או העמודות, מאפשרת שינוי שמות סימבוליים של העמודות, מאפשרת כללי הרשאה שונים מאפשרת הכלת עמודות מחושבות 12
סכימה פנימית Physical Schema • תיאור המבנה הפיזי של הטבלאות כפי שהן מאוחסנות ביחידות ההחסנה השונות • מכילה פרטים על : צורת האחסון של הטבלאות שיטות הגישה לשורות הטבלה )ע”י אינדקס או מנגנון (Hashing מספר שורות בגוש ) (Block סוג יחידת האחסנה של הטבלה 22
23
מילון נתונים Data Dictionary • קובץ מערכת המכיל את כל ההגדרות של: הסכימה הגלובלית והסכימה הפנימית • נותן תשובות לשאלות : אילו טבלאות מנוהלות בבסיס הנתונים אלו עמודות מנוהלות בטבלה מסוימת מהו תחום הערכים המותר לגבי עמודה מסוימת, ועוד 42
שפה לטיפול בנתונים DML Data Manipulation Language • תוכניות היישום המבקשות לגשת אל הנתונים חייבות להשתמש בשפה לטיפול בנתונים • - SQL שפה לאחזור ושינוי תוכן הנתונים: אחזור שורות מטבלאות, עדכון שורות, ביטול שורות, והוספת שורות • - Embedded SQL שיבוץ פקודות SQL סטטיות או דינמיות בתוך שפת תכנות מארחת הדורשת שירותי קדם-מהדר 52
שפה לטיפול בנתונים DML Data Manipulation Language • קדם מהדר - יודע לתרגם פקודות SQL לאוסף של פקודות CALL לתוך השפה המארחת • לדוגמא: Oracle תומך בעבודה עם קדם מהדר בשפות התכנות: Cobol, Pascal, PL/1, Ada וכן בממשק תכנות יישומים - ) API יוסבר בהמשך( 62
שיבוץ פקודות SQL בתוך שפת תכנות מארחת 72
אפשרויות הגישה לבסיסי נתונים טבלאיים מתוך תוכנית היישום • מהנדס היישום : * משבץ את פקודות ה- SQL לתוך השפה המארחת הדורשת שירותי קדם מהדר * משתמש בממשק תכנות יישומים SQL Application Programming Interface כאן אין דרישה לקדם מהדר היישום בונה את כל הפניות ע”י שימוש בפקודה CALL יצרן בסיס הנתונים מפרסם את כל השירותים שהמערכת מסוגלת לספק וכיצד יש להפעילם 82 : API -
אפשרויות הגישה לבסיסי נתונים טבלאיים מתוך תוכנית היישום • לדוגמא : * Sybase ו- SQL Server תומכות רק בממשק API * מערכת Informix תומכת בעבודה עם קדם מהדר בשיטה הסטטית והדינמית בשפות Cobol, C, Ada 92
עקרון ההפעלה של מערכות RDBMS 03
עקרון ההפעלה של מערכות RDBMS 13
עקרון ההפעלה של מערכות RDBMS • פקודות SQL מממשות תפישה לא פרוצדורלית לעומת התפישה הפרוצדורלית של מערכות לניהול קבצים / מערכות DBMS ישנות 23
33
דורות של שפות תכנות 3 - C, ADA, PASCAL, JAVA, COBOL PL/1 • דור , של חברת משוב , Insight של חברת , של מיקרוסופט , Oracle של Sybase של - 4 • דור MAGIC שפת DELPHI שפת Visual Basic שפת Developer שפת Power Builder שפת 34
שפות דור 4 • • • 53 מאופיינות ב- פיתוח מהיר של יישומים פקודות חדשות לטיפול בתפריטים וחלונות פקודות התומכות בעבודה עם בסיסי נתונים טבלאיים אין צורך בשירותי קדם-מהדר
מחולל שאילתות ודוחות : • מחולל שאילתות/דוחות Oracle של Discoverer Business של Objects Business Objects 36
גישה משרת WEB 73
מודל גישה לבסיסי נתונים - גישה משרת WEB • • • • • 83 דפדפן ) (Browser מציג טופס כדף במבנה HTML הזנת פירטי קלט מגיע לשרת WEB באמצעות פרוטוקול HTTP הפעלת יישום הבונה שאילתת SQL היישום נשלח לשרת בסיס הנתונים ביצוע פקודות SQL החזרת תוצאות השאילתא לשרת WEB בניית דף HTML עם הפלט שיגור ברשת האינטרנט בפרוטוקול HTTP אל הדפדפן
• • 93 יתרונות טכנולוגיית בסיסי הנתונים שיתוף נתונים - Data Sharing שיתוף נתונים בין היישומים השונים )שיתוף נתונים בין יחידות הארגון השונות( אמינות הנתונים - Data Integrity ניהול קשרים, בדיקת תקינות באופן מרכזי זמינות הנתונים - Data Availability כלים מתוחכמים לשליפה ועדכון סטנדרטיזציה - Standartization כל הנתונים מוגדרים ומנוהלים ע”י מנהל בסיס הנתונים ולא ע”י כל תוכנית יישום בנפרד. מביא לאחידות בהגדרת שמות נתונים ובבדיקת תקינות
• • 04 יתרונות טכנולוגיית בסיסי הנתונים גמישות לשינויים ) - (Flexibility to Changes קלות בהתאמת בסיס הנתונים ותוכניות היישום לשינויים בארגון אבטחת נתונים ) - (Data Security הגדרה ברורה למי מותר לעשות מה ועל איזה נתונים תמיכה בעיבוד תנועות ) - (Transaction Processing כשל במהלך ביצוע תנועה או אי השלמתה גורם לשחזור המצב תמיכה בעדכון בו-זמני ) - (Concurrent Update אפשרות לעדכון בו-זמני של הנתונים ע”י מספר משתמשים )שירותי נעילה ושחרור(.
• • • 14 חסרונות טכנולוגיית בסיסי הנתונים סבוכיות - תוכנה מורכבת הדורשת מיומנות בהפעלתה ואחזקתה עלות - מאות דולרים לתחנת עבודה פרטית, עשרות אלפי דולרים לשרתים מחלקתיים ועד מאות אלפי דולרים למערכות מחשב גדולות משאבי חומרה - יותר זיכרון, , CPU ושטחי עבודה בדיסק רגישות לתקלות - תקלה יכולה לגרום להשבתה של חלק גדול מפעילות הארגון מורכבות בשחזור - בגלל הקשרים בין הנתונים, תיקון ברשומה אחת גורר תיקונים רבים נוספים בטבלאות הקשורות
תרגילים • 1. בחן את מערכות המידע השונות הפועלות בארגון בו הנך לומד או בדוק האם מערכות מידע אלו משתמשות במערכות ניהול עובד: קבצים או במערכות ניהול בסיסי נתונים. באיזה שפות תכנות משתמשים בארגון ? האם מערכות אלו מנהלות מילון נתונים מרכזי, או שהגדרת הנתונים נמצאת בכל תוכנית יישום ? לגבי מערכת , RDBMS כיצד מתבצעת הגישה לבסיס הנתונים מתוך תוכנית היישום. האם קיימות פקודות SQL בתוך השפה המארחת הדורשות שירותי קדם-מהדר או שהיישום משתמש בממשק ? API • 2. עליך לבנות יישום באינטרנט: היישום מאפשר לתושבי העיר לגשת לאתר של הספרייה העירונית ולבדוק אם יש בספריה ספר מסוים, והאם הוא זמין להשאלה. תאר את מרכיבי היישום ואת שלבי העבודה שלו. הערה: תוכל לבצע תרגיל זה באופן תיאורטי אך רצוי לבדוק היכן קיימת ספריה שברשותה אתר שניתן לפנות אליו באמצעות האינטרנט. 24
f3082e3a5befe9f68e409ad6a37828da.ppt