420 likes | 627 Views
עקרונות מערכות לניהול בסיס נתונים. מערכות בסיסיות לניהול נתונים. תו, שדה, רשומה,קובץ ארגון קבצים: סדרתי, אינדקס סידרתי, אקראי סוג הגישה לקובץ: גישה סדרתית, גישה ישירה. מערכות בסיסיות לניהול נתונים.
E N D
עקרונות מערכות לניהול בסיס נתונים
מערכות בסיסיות לניהול נתונים • תו, שדה, רשומה,קובץ • ארגון קבצים: סדרתי, אינדקס סידרתי, אקראי • סוג הגישה לקובץ: גישה סדרתית, גישה ישירה
מערכות בסיסיות לניהול נתונים • כל תוכנית יישום מטפלת בקובץ אחד או יותר • לתוכנית היישום תלות מוחלטת בצורת האיחסון הפיסית של הנתונים, הניהול והטיפול בהם. • שיתוף נתונים בין יישומים שונים - כמעט בלתי אפשרי • גורם לכפילות בנתונים
מערכות לניהול קבצים - File Management System • משחררת את המפתח מטיפול במבנה הפיסי של הנתונים • מספקת כלים ליצירת הקובץ ואחזקתו • שגרות סטנדרטיות לגישה לנתונים אשר מהוות חלק מהמערכת לניהול קבצים • דוגמא: מערכת VSAM של IBM
מערכות לניהול קבצים - File Management System • תוכניות היישום מכירות את התכונות הפיזיות של הקובץ (מבנה רשומה, מפתחות, שיטת הגישה לקובץ) • שינוי בתכונות פיזיות אלה מחיבות שינוי מקביל בתוכנית היישום
מערכות לניהול קבצים -File Management System • 3 תוכניות יישום ניגשות לאותו קובץ, ולכן - • כל אחת מכילה את הגדרת רשומת הקובץ • כל תוכנית יישום מקבלת עותק נפרד של תוכנת המערכת לניהול קבצים • המערכת לניהול קבצים אינה מטפלת בקשרים בין הקבצים אלא בקובץ הבודד בלבד
מערכות לניהול קבצים -File Management System • חסרונות - • אמינות הנתונים: ניתן לבטל רשומת מרצה מבלי לעדכן בהתאם את כל רשומות הקורס בהם הוא מלמד • רמת תמיכה נמוכה לשינויים במבנה הנתונים: כל שינוי במבנה הרשומה דורש שינוי בהגדרת הרשומה בכל תוכניות היישום הניגשות אליה - דבר המצריך הידור מחדש
מערכת לניהול בסיסי נתונים • בסיס נתונים: אוסף של טבלאות הקשורות ביניהם בקשרים לוגיים המאפשרים את שיתוף הנתונים בין היישומים השונים • בנוסף לטבלאות המכילות את הנתונים מכיל בסיס הנתונים גם אוסף טבלאות המתארות את מבנה בסיס הנתונים עצמו.
מערכת לניהול בסיסי נתונים • בד”כ כל טבלה מאוחסנת בקובץ פיזי נפרד • ניתן לאחסן מספר טבלאות באותו קובץ פיזי • ואפילו את כל הטבלאות בקובץ פיזי אחד
מערכת לניהול בסיסי נתונים • אי-תלות פיזית ולוגית בין תוכניות היישום לבין מבנה בסיס הנתונים • שלא כבמערכת לניהול קבצים - תיאור הנתונים הנו חלק אינטגרלי מבסיס הנתונים ולא מהווה חלק מתוכנית היישום
מערכת לניהול בסיסי נתונים טבלאיים RDBMSRelational Data Base Management System • תוכנה ייעודית המאפשרת לתוכנית יישום לגשת בנוחות וביעילות אל הטבלאות ולבצע את הפעילויות הדרושות • תומכת ב- 3 פונקציות בסיסיות: הגדרת הנתונים (Data Definition) טיפול בנתונים (Data Manipulation) אבטחת אמינות (Data reliability)
טיפול בנתונים Data Manipulation • גישה לבסיס הנתונים מתוך תוכניות היישום או באופן ישיר ע”י המשתמש וביצוע: שליפת נתוניםהצגת נתונים לפי חתכים שוניםעדכון טבלאותהוספת שורות חדשות לטבלהביטול שורות קימות
אבטחת אמינות • הבטחת אמינות בסיס הנתונים: ברמת הטבלה הבודדת ברמת הקשרים בין הטבלאות • התוצאה: הגדלת אמינות המידע
סכימה גלובלית Global Schema • מתארת את הטבלאות • עמודות בכל טבלה • טיפוס הנתונים (Data Type) של כל עמודה • מפתח עיקרי (Primary Key) • קשרים לוגיים בין טבלאות • אילוצים על ערכים בטבלה
שפה להגדרת נתונים DDLData Definition Language • אוסף פקודות להגדרת הסכימה הגלובלית • השפה מאפשרת: • הגדרת טבלאות, עמודות, טיפוס נתונים, מפתח עיקרי • תחומי ערכים מותרים • קשרים לוגיים • כללי הגנה • מזניקים (Triggers) המופעלים בתנאים מסוימים ומבצעים פעולות מסוימות
תת-סכימה (Sub Schema) /טבלאות מדומות (View) • חלק מבסיס הנתונים הנגזרים על פי הצרכים המיוחדים של המשתמש או של תוכנית היישום • מאפשרת ליצור לכל משתמש נקודת מבט (View) ייחודית המותאמת לצרכיו • הטבלה המדומה: יכולה להכיל רק חלק מהשורות או העמודות, מאפשרת שינוי שמות סימבוליים של העמודות, מאפשרת כללי הרשאה שונים מאפשרת הכלת עמודות מחושבות
סכימה פנימית Physical Schema • תיאור המבנה הפיזי של הטבלאות כפי שהן מאוחסנות ביחידות ההחסנה השונות • מכילה פרטים על: צורת האחסון של הטבלאות שיטות הגישה לשורות הטבלה (ע”י אינדקס או מנגנון Hashing)מספר שורות בגוש (Block) סוג יחידת האחסנה של הטבלה
מילון נתונים Data Dictionary • קובץ מערכת המכיל את כל ההגדרות של: הסכימה הגלובלית והסכימה הפנימית • נותן תשובות לשאלות: אילו טבלאות מנוהלות בבסיס הנתונים אלו עמודות מנוהלות בטבלה מסוימת מהו תחום הערכים המותר לגבי עמודה מסוימת, ועוד
שפה לטיפול בנתונים DMLData Manipulation Language • תוכניות היישום המבקשות לגשת אל הנתונים חייבות להשתמש בשפה לטיפול בנתונים • SQL - שפה לאחזור ושינוי תוכן הנתונים: אחזור שורות מטבלאות, עדכון שורות, ביטול שורות, והוספת שורות • Embedded SQL - שיבוץ פקודות SQLסטטיות או דינמיות בתוך שפת תכנות מארחת הדורשת שירותי קדם-מהדר
שפה לטיפול בנתונים DMLData Manipulation Language • קדם מהדר - יודע לתרגם פקודות SQL לאוסף של פקודות CALL לתוך השפה המארחת • לדוגמא: Oracle תומך בעבודה עם קדם מהדר בשפות התכנות: Cobol, Pascal, PL/1, Ada וכן בממשק תכנות יישומים - API (יוסבר בהמשך)
אפשרויות הגישה לבסיסי נתונים טבלאיים מתוך תוכנית היישום • מהנדס היישום: * משבץ את פקודות ה- SQL לתוך השפה המארחת הדורשת שירותי קדם מהדר * משתמש בממשק תכנות יישומים - API : SQL Application Programming Interface- כאן אין דרישה לקדם מהדר - היישום בונה את כל הפניות ע”י שימוש בפקודה CALL - יצרן בסיס הנתונים מפרסם את כל השירותים שהמערכת מסוגלת לספק וכיצד יש להפעילם
אפשרויות הגישה לבסיסי נתונים טבלאיים מתוך תוכנית היישום • לדוגמא : *Sybase ו- SQL Server תומכות רק בממשק API* מערכת Informix תומכת בעבודה עם קדם מהדר בשיטה הסטטית והדינמית בשפות Cobol, C, Ada
עקרון ההפעלה של מערכות RDBMS • פקודות SQL מממשות תפישה לא פרוצדורלית לעומת התפישה הפרוצדורלית של מערכות לניהול קבצים / מערכות DBMS ישנות
דורות של שפות תכנות • דור 3 - C, ADA, PASCAL, JAVA, COBOL PL/1 • דור 4 - שפתMAGIC של חברת משוב, שפת DELPHI של חברת Insight, שפת Visual Basic של מיקרוסופט, שפת Developer של Oracle, שפת Power Builder של Sybase
שפות דור 4 • מאופיינות ב- • פיתוח מהיר של יישומים • פקודות חדשות לטיפול בתפריטים וחלונות • פקודות התומכות בעבודה עם בסיסי נתונים טבלאיים • אין צורך בשירותי קדם-מהדר
מחולל שאילתות ודוחות • מחולל שאילתות/דוחות: Discoverer של Oracle Business Objects של Business Objects
מודל גישה לבסיסי נתונים -גישה משרת WEB • דפדפן (Browser) מציג טופס כדף במבנה HTML • הזנת פירטי קלט • קלט מגיע לשרת WEB באמצעות פרוטוקול HTTP • הפעלת יישום הבונה שאילתת SQL • היישום נשלח לשרת בסיס הנתונים • ביצוע פקודות SQL • החזרת תוצאות השאילתא לשרת WEB • בניית דף HTML עם הפלט • שיגור ברשת האינטרנט בפרוטוקול HTTP אל הדפדפן
יתרונות טכנולוגיית בסיסי הנתונים • שיתוף נתוניםData Sharing - שיתוף נתונים בין היישומים השונים (שיתוף נתונים בין יחידות הארגון השונות) • אמינות הנתוניםData Integrity - ניהול קשרים, בדיקת תקינות באופן מרכזי • זמינות הנתוניםData Availability - כלים מתוחכמים לשליפה ועדכון • סטנדרטיזציהStandartization - כל הנתונים מוגדרים ומנוהלים ע”י מנהל בסיס הנתונים ולא ע”י כל תוכנית יישום בנפרד. מביא לאחידות בהגדרת שמות נתונים ובבדיקת תקינות
יתרונות טכנולוגיית בסיסי הנתונים • גמישות לשינויים (Flexibility to Changes) -קלות בהתאמת בסיס הנתונים ותוכניות היישום לשינויים בארגון • אבטחת נתונים (Data Security) - הגדרה ברורה למי מותר לעשות מה ועל איזה נתונים • תמיכה בעיבוד תנועות (Transaction Processing) - כשל במהלך ביצוע תנועה או אי השלמתה גורם לשחזור המצב • תמיכה בעדכון בו-זמני (Concurrent Update) - אפשרות לעדכון בו-זמני של הנתונים ע”י מספר משתמשים (שירותי נעילה ושחרור).
חסרונות טכנולוגיית בסיסי הנתונים • סבוכיות - תוכנה מורכבתהדורשת מיומנות בהפעלתה ואחזקתה • עלות - מאות דולרים לתחנת עבודה פרטית, עשרות אלפי דולרים לשרתים מחלקתיים ועד מאות אלפי דולרים למערכות מחשב גדולות • משאבי חומרה - יותר זיכרון, CPU, ושטחי עבודה בדיסק • רגישות לתקלות - תקלה יכולה לגרום להשבתה של חלק גדול מפעילות הארגון • מורכבות בשחזור - בגלל הקשרים בין הנתונים, תיקון ברשומה אחת גורר תיקונים רבים נוספים בטבלאות הקשורות
תרגילים • 1. בחן את מערכות המידע השונות הפועלות בארגון בו הנך לומד או עובד: - בדוק האם מערכות מידע אלו משתמשות במערכות ניהול קבצים או במערכות ניהול בסיסי נתונים. - באיזה שפות תכנות משתמשים בארגון? - האם מערכות אלו מנהלות מילון נתונים מרכזי, או שהגדרת הנתונים נמצאת בכל תוכנית יישום? - לגבי מערכת RDBMS, כיצד מתבצעת הגישה לבסיס הנתונים מתוך תוכנית היישום. האם קיימות פקודות SQLבתוך השפה המארחת הדורשות שירותי קדם-מהדר או שהיישום משתמש בממשק API? • 2. עליך לבנות יישום באינטרנט: - היישום מאפשר לתושבי העיר לגשת לאתר של הספרייה העירונית ולבדוק אם יש בספריה ספר מסוים, והאם הוא זמין להשאלה. - תאר את מרכיבי היישום ואת שלבי העבודה שלו. הערה: תוכל לבצע תרגיל זה באופן תיאורטי אך רצוי לבדוק היכן קיימת ספריה שברשותה אתר שניתן לפנות אליו באמצעות האינטרנט.