פונקציות DBMS עיקריות
פונקציות DBMS עיקריות

וִידֵאוֹ: פונקציות DBMS עיקריות

וִידֵאוֹ: פונקציות DBMS עיקריות
וִידֵאוֹ: HOW TO: Grow Sprouts for Chickens 2024, מאי
Anonim

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

ניהול נתונים

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

פונקציות subd
פונקציות subd

ניהול מאגר RAM

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

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

ניהול עסקאות

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

הפונקציות העיקריות של subd
הפונקציות העיקריות של subd

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

למה הם מתכוונים?

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

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

מספר פונקציות subd בסיסיות
מספר פונקציות subd בסיסיות

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

Journaling

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

  • soft, שיכול להתפרש ככיבוי בלתי צפוי של המחשב (המקרה הנפוץ ביותר הוא הפסקת חשמל חירום);
  • hard, המאופיינים באובדן חלקי או מלא של נתונים המאוחסנים במדיה חיצונית.

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

תכלית subd ופונקציות עיקריות
תכלית subd ופונקציות עיקריות

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

מה זה ואיך משתמשים בו?

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

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

החזרה

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

מושג הפונקציה subd subd
מושג הפונקציה subd subd

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

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

כשלים קשים

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

תמיכה בשפה

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

מבנה פונקציית subd
מבנה פונקציית subd

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

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

מה זה?

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

לא נכלל בפונקציות העיקריות של subd
לא נכלל בפונקציות העיקריות של subd

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

מוּמלָץ: