Presentation is loading. Please wait.

Presentation is loading. Please wait.

A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.

Similar presentations


Presentation on theme: "A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File."— Presentation transcript:

1 A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File

2 2 A. Frank בקובץ ישיר מתקדם מספר המקומות בקובץ – m משתנה, לעומת קובץ ישיר קלאסי ששם m קבוע כאשר m משתנה – פונקצית הגיבוב משתנה הקובץ הסדרתי גדל וקטן בהתאמה בגלל הביטולים הפיזיים גישה ישירה יותר (1) קובץ ישיר מתקדם - Advanced Direct File m n

3 3 A. Frank (2) קובץ ישיר מתקדם - Advanced Direct File דוגמא לשילוב של שרשור פנימי, יש גלישה בתוכן השטח הראשי Pierre Salinger Andrew Tanne Chris Strachey Mary Shaw Barbara Tuchman Henry Kissinger Julia Robinson Emmy Noether Gertrude Stein Julia Robinson Gertrude Stein Henry Kissinger Emmy Noether K: N: R: S: T: בלוק גלישה Pierre SalingerChris Strachey Mary Shaw AndrewTanne Barbara Tuchman שטח ראשי מפתח רשומות

4 4 A. Frank שטח ראשי – מקום אחסנה של רשומות, הקובץ. אוסף של מכלאים, כל מכלא תופס גוש ומכיל מספר קבוע של רשומות בהתאם לגודלו ולגודל הרשומה לדוגמא: טבלה – מהווה אינדקס, שדה מפתח + שדה מצביע למכלא. במקרה זה הטבלה מהווה קובץ / שטח אינדקס קובץ ישיר מתקדם בשיטת גיבוב מתרחב 00 01 10 11 table Record Storage bfr = 10 m = 4 x bfr

5 5 A. Frank גיבוב מתרחב – Extendible Hashing בשיטה זו פונקצית הגיבוב היא קיצוץ של 2 הספרות השמאליות מתוך הייצוג הבינארי של המפתח 0010 10 = 34, רשומה 34 תכנס למכלא שמסומן במפתח 10 כאשר מכלא מסוים מתמלא, מפצלים את הגוש לשניים (פיצול גוש, block split) ומחלקים את שדה המצביע לשניים(הכפלת טבלה, table multiplication) שיטה זו נקראת גיבוב מתרחב משום שהשטח הראשי מתרחב לפי הצורך

6 6 A. Frank שיטת גיבוב מתרחב - דוגמא 000 001001 010 011 100 101 110110 111111 כל מפתח בטבלה הקודמת פוצל לשניים ע"י הוספת 0 ו-1 לאחר שהבלוק השלישי התמלא הוא פוצל לשניים והמצביעים שונו בהתאם

7 7 A. Frank גיבוב מזדחל –Linear Hashing לכל בלוק יש מצביע =>B+P. הנחה: הבלוקים בשטח הראשי מסודרים אחד אחרי השני קיצוץ 2 הספרות הנמוכות מערך המפתח 010001 אין שטח טבלה(table), אלא יש שטח גלישה אליו יש מצביע 00 01 10 11

8 8 A. Frank 00 01 10 11 הוספת בלוק גלישה הוספנו 7 רשומות ושני גושי גלישה. סף הטעינה:(אחוז מסוים מהמכלא) שומר על היחס בין הקובץ לסף, בדוגמא:70%. כאשר מגיעים לסף טעינה (42 רשומות מתוך 60) יש צורך בגיבוב מזדחל.

9 9 A. Frank 000 01 10 11 100 לאחר שעברנו את סף הטעינה מתייחסים לשלושת הסיביות הימניות פיצול הגוש הראשון - 4 רשומות המסתיימות בסיביות 000 נשארות ו-6 הרשומות המסתיימות ב-100 עוברות מחוון P מפריד בין בלוקים של שתי סיבות לשלוש סיביות ביצוע גיבוב מזדחל p

10 10 A. Frank יתרונות של גיבוב מזדחל על פני גיבוב מתרחב בגיבוב מתרחב מגדילים כל פעם את מספר כניסות האינדקס והבלוקים בצורה חזקתית היות והרשומות ממוינות בתוך הבלוקים עלול הדבר לגרום לפיצולים כאשר רשומות מגיעות לאותו אזור עלות גישה ממוצעת לרשומה בגיבוב מזדחל – 1.5


Download ppt "A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File."

Similar presentations


Ads by Google