אלגברה יחסי במאגרי מידע: פעולות, דוגמאות

תוכן עניינים:

אלגברה יחסי במאגרי מידע: פעולות, דוגמאות
אלגברה יחסי במאגרי מידע: פעולות, דוגמאות
Anonim

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

אלגברה יחסי
אלגברה יחסי

מוצר קרטזי (Χ)

משלב מידע משתי מערכות יחסים שונות לאחד.

סימון – r Χ s, כאשר r ו-s הם יחסים והפלט שלהם יוגדר כ

r Χ s={qt | q ∈ r ו-t ∈ s}.

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

שינוי שם הפעולה (ρ).

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

Designation – ρ x (E), כאשר התוצאה של הביטוי E מאוחסנת עם השםx.

פעולות נוספות:

  • set intersection;
  • assignment;
  • חיבור טבעי.

חשבון יחסי

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

  • חשבון מתאם של tuple;
  • מסנן טווחי משתנים.

סימן - T/State: מחזירה את כל ה-T tuples שעומדים בתנאי. תוֹצָאָה. מחזירה טפולים עם שם. ניתן לכמת TRC. אתה יכול להשתמש בכימות קיומיות (∃) ואוניברסליות (∀). סיכום. השאילתה שלמעלה תיתן את אותה תוצאה כמו הקודמת.

חשבון יחסי דומיין DRC

משתנה המסנן משתמש בדומיין התכונה במקום ערכי מספרים שלמים כפולים (כפי שנעשה ב-TRC שהוזכר לעיל).

סימון – {a 1, a 2, a 3, …, a | P (a 1, a 2, a 3, …, a)}, כאשר a1, a2 הם תכונות ו-P מציין נוסחאות שנבנו עם ערכים פנימיים.

מסקנה. מגדיר את המאמר, העמוד והנושא מהקשר TutorialsPoint, כאשר הנושא הוא מסד הנתונים.

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

יחסימודל נתונים אלגברה יחסי
יחסימודל נתונים אלגברה יחסי

ווריאציות וסכמות של חשבון יחסי ואלגברה

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

  • entity והתכונות שלה;
  • קישור, שהוא שיוך בין הערכים לעיל.

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

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

קשר הוא קשר בין ישויות. תהליך הקומפילציה הוא כדלקמן:

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

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

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

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

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

אפשרויות קיימות לתיאור, אחסון, שינוי מידע

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

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

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

  1. SELECT היא אחת מפקודות השאילתה הבסיסיות. זה מקביל לפעולת ההשלכה של אלגברה יחסית. הוא בוחר תכונות על סמך התנאי המתואר בסעיף WHERE.
  2. FROM - קטע זה לוקח שם כארגומנט שממנו יש לבחור/להקרין את התכונות. במקרה שניתן יותר משם אחד, פריט זה מתאים למוצר הקרטזיאני.
  3. WHERE - סעיף זה מפרט את הפרדיקט או התנאים שיש לעמוד בהם כדי להתאים את התכונה החזויה.

יש גם פקודות:

  • insert;
  • changing values;
  • מחק.
אלגברה יחסי במאגרי מידע
אלגברה יחסי במאגרי מידע

יצירת שאילתות אלגברה יחסיות

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

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

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

דוגמה 1.

צורך מידע: מידע על רכבי שנת דגם 1996 שבהם נמצאו ליקויים במהלך בדיקה לשנת 1999.

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

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

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

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

אלגברה יחסי היא שפה
אלגברה יחסי היא שפה

אפשרויות חישוב ללא תוצאות ביניים

דוגמה 2.

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

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

היכן המידע מאובטח ומוגן

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

  1. ראשי. קטגוריה זו כוללת זיכרון הנגיש ישירות למעבד. אוגרים, זיכרון מהיר (מטמון) וזיכרון ראשי (RAM) נגישים ישירות למרכז, מכיוון שכולם ממוקמים על לוח האם או ערכת השבבים. אחסון זה הוא בדרך כלל קטן מאוד, מהיר במיוחד ולא יציב. נדרש אספקת חשמל קבועה כדי לשמור על המצב. אם זה נכשל, כל הנתונים שלו יאבדו.
  2. משנית. משמש לאחסון מידע לעתידשימוש או גיבוי. כולל התקני זיכרון שאינם חלק מערך השבבים או לוח האם של המעבד, כגון דיסקים מגנטיים, דיסקים אופטיים (DVD, CD וכו'), כוננים קשיחים, כונני הבזק וקלטות מגנטיות.
  3. שלישוני. משמש לאחסון כמויות עצומות של נתונים. מכיוון שהתקני אחסון כאלה הם חיצוניים למערכת המחשב, הם האיטיים ביותר מבחינת מהירות. גאדג'טים אחסון אלו משמשים בעיקר לגיבוי המערכת כולה. דיסקים אופטיים וקלטות מגנטיות נמצאים בשימוש נרחב כאחסון שלישוני.

פעולות אלגברה יחסיות מיוחדות חשובות ליעילות השאילתה.

מבנה אחסון

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

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

כוננים מגנטיים וקשיחים הם התקני האחסון המשניים הנפוצים ביותר במערכות המחשב של ימינו. הם נקראים מגנטייםבסיס מתכת. דיסקים אלה ממוקמים אנכית על הציר. ראש הקריאה/כתיבה נע ביניהם ומשמש למגנט או להסיר נקודה כזו מתחת. ניתן לזהות אותו כ-0 (אפס) או 1 (אחד).

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

אלגברה רלציונית של SQL
אלגברה רלציונית של SQL

פעולות קובץ

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

  • עדכון;
  • search.

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

  1. פתוח - קיים באחד משני מצבי קריאה או כתיבה. במקרה הראשון, מערכת ההפעלה לא מאפשרת לאף אחד לשנות את הנתונים. במילים אחרות, הנתונים נקראים רק. ניתן לשתף קבצים שנפתחו במצב קריאה בין מספר אובייקטים. מצב הכתיבה מאפשר לך לשנות את הנתונים. ניתן לקרוא קבצים אך לא ניתן לשתף אותם.
  2. סגירה היא הפעולה החשובה ביותר מנקודת מבט של מערכת ההפעלה מכיוון שהיא מסירה את כל המנעולים(אם במצב משותף), שומר נתונים (אם השתנו) במדיה משנית, ומשחרר את כל המאגרים והמטפלים המשויכים לקובץ.
  3. אינדקס היא שיטת מבנה מידע לחילוץ יעיל של רשומות מקבצים של מערכת בהתבסס על כמה תכונות שבהן המערכת הוטמעה. מוגדר על סמך מאפיינים.

אינדקס יכול להיות מהסוג הבא:

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

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

מוּמלָץ: