הבדלים בין גרסאות בדף "בסיס נתונים"

הוסרו 6 בתים ,  לפני 4 שנים
מ
מ (תיקון קישור)
בסיס נתונים מכיל בדרך כלל רשומות רבות, המקושרות באמצעות מפתחות. לתרשים שמבטא את כל הקשרים בין הרשומות השונות קוראים '''דיאגרמה'''. היחסים בין רשומות יכולים להיות מכמה סוגים. הנפוצים ביותר הם יחס של אחד לרבים, שבו לכל רשומה יכולות להיות מקושרות מספר רשומות אחרות, ויחס של אחד לאחד, שבו לכל רשומה יכולה להיות רק רשומה אחת שמקושרת אליה. דוגמה: במרשם התושבים, לאם אחת מקושרים ילדים אחדים (יחס של אחד לרבים), אך לא יותר מבן-זוג אחד (יחס של אחד לאחד). בבסיס הנתונים יש מנגנון בקרה מיוחד האוכף את התנאים הללו ושמו '''מנגנון אימות היחוסים''' הוא גם מכונה '''מנגנון בקרת יתומים ואלמנות''', מכיוון שאינו מאפשר ליצור או להותיר רשומות "יתומות".
 
המפתח או האינדקס הינוהוא שדה שמוגדר ככזה. כמעט כל שדה יכול להיות מוגדר כשדה מפתח (למעט שדה בינארי ושדה מזכר), אבל רק שדה אחד בכל טבלה יכול להיות מוגדר כמפתח ראשי, שאר המפתחות יהיו מוגדרים כ'''מפתחות זרים''' או '''מפתחות משניים'''. שדה מפתח הוא שדה שהתוכנה יוצרת בעבורו מפתח פנימי ממוין של כל הערכים באותו שדה. תפקידיו של המפתח הם: להאיץ את העבודה עם הרשומה, ב[[מיון (מדעי המחשב)|מיון]], ב[[אלגוריתם חיפוש|חיפוש]] ובשליפה של ערכים, וכן למנוע הזנת ערכים זהים במפתח שהוגדר ללא כפילות.
 
==מנגנונים במערכת לניהול בסיס נתונים==
;יומן האירועים: מנגנון הרושם את כל העדכונים המבוצעים בתוכן של בסיס הנתונים כדי לתמוך בהתאוששות ושחזור של בסיס הנתונים במקרה של תקלה בנתונים הנובעת מהפסקה של [[תנועה (מערכות מידע)|תנועה]] או של בעיה אחרת. במקרה של תקלה ניתן לשחזר את הנתונים אחורה למצב שהיה לפני התחלת התנועה, אפשרות נוספת היא לבצע שיחזור לפנים, באמצעות שיחזורו מאמצעי גיבוי קדימה אל המצב המתבקש.
 
;מנגנון בקרת המקביליות (Concurrency Control): מנגנון זה אחראי לביצוע התקין של תנועות במסד הנתונים (Transactions). מנגנון בקרת המקביליות אחראי לקיום תכונות [[ACID]] במסד הנתונים. [[תנועה (מערכות מידע)|תנועה]] (טרנזקציה) היא אבסטרקציה של אוסף פעולות קריאה וכתיבה אטומיות לאובייקטים במסד הנתונים. היסטוריה מגדירה [[יחס סדר חלקי]] בין תנועות הרצות במקביל במסד הנתונים. כאשר שתי תנועות שונות ניגשות לאותו אובייקט ייתכן מצב של חוסר עקביות במסד כתוצאה מכך ששתי התנועות מתנגשות. שתי תנועות נקראות מתנגשות כאשר לפחות אחת מהן מבצעת פעולת כתיבה לאותו אובייקט. מנגנון בקרת המקביליות דואג שביצוע התנועות יהיה נכון ושקיף למשתמש. אחת מהמנגנונים הנפוצים לבקרת מקביליות הינוהוא מנגנון הנעילות (Lock Based Mechanism). האלגוריתם הנפוץ ביותר נקרא [[2PL]] {{כ}}(Two Phase Locking). חיסרון בשימוש במנגנון נעילות כגון 2PL הינוהוא האפשרות להגיע למצב של [[קיפאון (מדעי המחשב)|קיפאון]] (Deadlock). מנגנונים מבוססי נעילות נוספים שבשימוש הם: STRICT 2PL ו Conservative 2PL. כמו כן ישנם מנגנוני בקרת מקביליות המשתמשים בתגיות זמן (Timestamps).
 
;מנגנון שכפול (Replica Control): מנגנון המאפשר ליצור כמה מופעים של בסיס הנתונים באתרים שונים ולבצע סינכרון בין הנתונים שבהם באופן שכל שינוי בבסיס נתונים אחר מועבר לכל היתר. באמצעות מנגנון השכפול אפשר להעביר גם שינוי הגדרות של בסיס הנתונים לכל הבסיסים האחרים.