A. Frank File Organization Introduction to Overflow Thanks to Tamar Barnes.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
חיפוש בינה מלאכותית אבי רוזנפלד. סוכנים פותרי בעיות Reflex agents לא יכולים לתכנן קדימה כדי לחפש, יש צורך לייצר מודל לחפש בו !
1 ניהול תנועות חלק 3 Transaction Management Part 3.
A. Frank File Organization Indexed-Sequential File Measurements Thanks to Tamar Barnes.
A. Frank File Organization Hardware Time Parameters.
לבופר המיקמק הכי יפה וחתיך ! הכנתי משהו בשבילך כדי שתיסלח לי ! קדימה !
כתיבת עבודת גמר מבנה העבודה  מבחינה צורנית - יש להקפיד על אחידות בכתיבה  כותרות אחידות  רווחים זהים, פונט בגודל אחיד (12, רווח וחצי)  הצגת.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
A. Frank File Organization File Organization Measures.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
תרגול 8 עצי B+ אינדקס משני.
A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
מה החומר למבחן ? כל החומר שנלמד בהרצאות ובתרגולים. לגבי backtracking: לא תידרשו לממש אלגוריתם, אך כן להבין או להשלים מימוש נתון. אחת משאלות המבחן מבוססת.
רקורסיות נושאי השיעור מהן רקורסיות פתרון רקורסיות : שיטת ההצבה שיטת איטרציות שיטת המסטר 14 יוני יוני יוני 1514 יוני יוני יוני 1514.
מבוא לשפת C חידות ונקודות חשובות נכתב על-ידי יורי פקלני. © כל הזכויות שמורות לטכניון – מכון טכנולוגי לישראל.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
A. Frank File Organization Sequential File Measures.
A. Frank File Organization Pile File Measures. 2 A. Frank Steps in analysis of file organization בהערכת מבנה קובץ, נתייחס ל - 6 שלבים / צעדים : 1. תאור.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
A. Frank File Organization Stream Model מודל תזרים Thanks to Adi Gutman and Noa Cohen.
A. Frank File Organization Classic / Direct File קובץ ישיר קלאסי.
חישוב ואופטימיזציה של שאילתות חלק 1
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
A. Frank File Organization Data Units Hierarchy Thanks to Adi Gutman and Noa Cohen.
קובץ רב-אינדקס Multi-Indexed File
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
A. Frank File Organization Various Parameter Issues.
תרגול 7 עצי B
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
מבני בקרה לולאות. שאלה #1 שאלה ב' – תכתוב תוכנה הכותבת את תפריט הבאה Type 1 to find the area of a circle Type 2 to find the circumference of a circle.
A. Frank File Organization Transfer Time/Rate Parameters.
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
Remember Remember The 5 th of November. תרגול 2 קובץ סדרתי.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;
עקרון ההכלה וההדחה.
יחס סדר חלקי.
1 חישוב ואופטימיזציה של שאילתות חלק 1 Query Evaluation and Optimization Part 1.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
Data Structures, CS, TAU, RB-Tree 1 עץ אדום-שחור - עץ חיפוש בינארי - בכל צומת ביט אינפורמציה נוסף - צבע « עץ “ כמעט מאוזן ” « (O(log n במקרה גרוע ביותר.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
A. Frank File Organization Introduction to Pile File.
A. Frank File Organization Hardware Size Parameters.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
מבוא לחשבונאות ניהולית. היחס בין חשבונאות פיננסית לניהולית פיננסיתניהולית פנימיים מותאמים לארגון בחלקים מסוימים יכול להיות : תחזית כמותי או איכותי מוניטרי.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 11: File System Implementation.
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
תכנות מכוון עצמים ושפת ++C וויסאם חלילי. TODAY TOPICS: 1. Function Overloading & Default Parameters 2. Arguments By Reference 3. Multiple #include’s 4.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site:
עקרונות תכנות מונחה עצמים תרגול 11: OOP in C++. Outline  Where do the objects live ?  Inheritance  Slicing  Overriding vs Shadowing.
קשר לוגי : סיבה ותוצאה. במשפט – דוגמות קלות בגלל הגשם החלטנו לא לנסוע לטיול לחיפה. הרצון שלי להצליח הניע אותי להשקיע בלימודים. ציפורים נודדות בין יבשות.
קצת היסטוריה 1981דיווח ראשון על תסמונת כשל חיסוני נרכש בקרב מספר הומוסקסואלים. 1981דיווח על ביטויים שונים של איידס בקרב מזריקי סמים, חולי המופיליה, מקבלי.
Tirgul 12 Trees 1.
Formal Specifications for Complex Systems (236368) Tutorial #1
אינדקסינג והשינג (indexing & hashing)
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
ממשקים - interfaces איך לאפשר "הורשה מרובה".
Marina Kogan Sadetsky –
תזכורת על מה דיברנו שיעור שעבר? בנינו אתר אינטרנט עם כותרות
Presentation transcript:

A. Frank File Organization Introduction to Overflow Thanks to Tamar Barnes

2 A. Frank Idea of Index-Sequential (IS) File אינדקס סדרתי Index-Sequential - מבנה קובץ מסודר פלוס אינדקס ל " גישה ישירה "? מה הרעיון בגדול ? איך להימנע משינויים תכופים באינדקס ? – יש צורך בשימוש בשטח גלישה ! לכן דרוש מבוא לגלישה ! | | | | | | | קובץ / שטח ראשי Main file מפתח k | | | | קובץ / שטח אינדקס Index file k k V + P | | | | | | | קובץ / שטח גלישה Overflow file

3 A. Frank Overflow Issues מבוא לגלישה (Overflow): 1. שטח גלישה – מטרות ושימוש. 2. ניהול שטחי גלישה – גלישה במסגרת של גוש / מסילה / גליל / דיסק / משולב. 3. טיפול בשרשור רשומות – שרשור ברמת רשומה / גוש.

4 A. Frank Idea of Overflow Area שטח גלישה : מקום לאחסון רשומות, שאין להן מקום בגוש מסוים של הקובץ, אע " פ שהן שייכות לו בהתאם לסדר הלוגי. יש שימוש במצביעים כדי לשמור על הסדר ( הלוגי ) בקובץ. הכנסת רשומה חדשה דורשת : 1. מציאת הגוש הנכון בקובץ. 2. מציאת המקום הנכון בגוש המסוים. 3. הזזת חלק מהרשומות כדי לפנות לה מקום, ואם אין אז מקום בשביל הרשומה האחרונה בגוש, העברתה לשטח גלישה, או הכנסת הרשומה החדשה ישירות לשטח גלישה, תוך שימוש במצביעים.

5 A. Frank Logical Overflow Area המבנה הכללי : שטחי נתוניםשטחי גלישה

6 A. Frank Management of Overflow Area שיטות לניהול שטחי גלישה : 1. גלישה במסגרת הגוש 2. גלישה במסגרת המסילה 3. גלישה במסגרת הגליל 4. גלישה במסגרת הדיסק 5. צירוף של שיטות 3 ו - 4, כאשר מתחילים עם גלישה במסגרת הגליל, ורק אם צריך, אז גם במסגרת הדיסק.

7 A. Frank 1. Overflow within the Block גלישה במסגרת הגוש : - נשאיר מספר מקומות, ז. א., רשומות ריקות, בכל גוש. - לדוגמא, נמלא בכל פעם 2/3 ~ גוש, ה - 1/3 ~ הנותר כשטח גלישה. - זו שיטה סבירה אם הגושים גדולים וההוספות מפולגות היטב. - אולם, כשגוש אחד מתמלא, השיטה " נשברת ". שטח נתונים גוש רוצה להיכנס : אין בעיה רוצה להיכנס : גם לא בעיה ! שטח גלישה... 7 רוצה להיכנס : אבל אין מקום !

8 A. Frank 2. Overflow within the Track (1) גלישה במסגרת המסילה : - נשאיר מספר גושים ריקים לגמרי בסוף כל מסילה. - נמלא בכל פעם nbt*3/~2 גושים, ה - 3/1 ~ הנותר ישמש כשטח גלישה. - כל רשומה גולשת תזדקק למצביע P ברשומה שתצביע עליה מהמקום המתאים בגוש אליו היא הייתה אמורה להיכנס. - כל רשומה למעשה יכולה להתחיל שרשרת גלישה בפני עצמה. - אולם, כשמסילה אחת מתמלאת, השיטה " נשברת ".

9 A. Frank 2. Overflow within the Track (2) רוצה להיכנס : שטח נתוניםשטח גלישה רוצה להיכנס : שטח נתונים שטח גלישה רוצה להיכנס : שטח נתונים שטח גלישה רוצה להיכנס : שטח נתוניםשטח גלישה

10 A. Frank 3. Overflow within the Cylinder גלישה במסגרת הגליל : - נשאיר מספר מסילות ריקות בכל גליל. - נמלא בכל פעם ntc*3/~2 מסילות, ה - 3/1 ~ הנותר כשטח גלישה. משרשרים כמו קודם, רק שהפעם לגושי גלישה במסילות הריקות. - יתרון : חוסכים הזזת זרוע ( עלות s) כי נשארים באותו גליל. - חסרונות : בזבוז שטח - לעתים מקבלים פיזור לא אחיד של הרשומות בגלילים ולכן מסילות נותרות ריקות ברוב הגלילים. - אולם, כשגליל אחד מתמלא, השיטה " נשברת ". ntc מסילות ריקים מלאים

11 A. Frank 4. Overflow within the Disk גלישה במסגרת הדיסק ( = הגולן ): - שטח גלישה נפרד המשותף לכל הקובץ. - שטח הגלישה יכול להכיל גם כמה גלילים. - הרשומות הנוספות גולשות לשטח זה, בעזרת מצביעים. - יתרון : השיטה גמישה, ואינה תלויה בהתפלגות הגעת הרשומות הנוספות. - חסרון : יש צורך בהזזת הזרוע ( עלות s) לפחות פעם אחת. - אבל כאן השיטה לא " תשבר " באמצע, כמו בשיטות הקודמות, אלא אם כן כל שטח הגלישה התמלא, שזו כבר בעיית הקצאה ראשונית לא מספקת. גליל נתונים מלא שטח גלישה נפרד

12 A. Frank 5. Overflow within the Cylinder + Disk גלישה גם במסגרת הגליל וגם במסגרת הדיסק : - נקצה שטחים הן לגלישה במסגרת הגליל ( חסכון בעלות s) והן לגלישה במסגרת הדיסק ( כדי שהשיטה לא " תשבר "). - מתחילים עם גלישה במסגרת הגליל ורק כשהוא מתמלא, רק לגבי הגליל הזה, נאלצים לשלם מחיר של גלישה לשטח גלישה בנפרד. נהנים מכל העולמות !

13 A. Frank Record Chaining Management שיטות טיפול בשרשור רשומות : 1. שרשור ברמת רשומה (Record-level Chaining) 2. שרשור ברמת גוש (Block-level Chaining, Push Through)

14 A. Frank Record Level Chaining (1) שרשור ברמת הרשומה : - לכל רשומה יש מצביע גלישה. כל רשומה, בשדה המצביע P שלה, יכולה להתחיל שרשרת גלישה. - יכולות להיות לכן עד bfr שרשראות גלישה לגוש – יקר מבחינת גישה סדרתית. - משתמשים בשרשור של רשומות גולשות כדי לשמור על הסדר הלוגי ולכן אין גם שינוי בטבלאות האינדקס ( חוץ מחריג – נראה זאת בהמשך ).

15 A. Frank Record Level Chaining (2) ^ ^ ^ ^ ^ ^ b-1.1 ^ ^ … end … … end b-1.1 Social securitymore dataoverflow pointer block record no. keypointer block number Overflow area Index Master Index Sequential File (Primary area) ^

16 A. Frank Block-level Chaining (1) שרשור ברמת הגוש (Push Through) - משתמשים בשדה מצביע אחד לכל גוש. את הרשומות הנוספות, בעלות מפתחות נמוכים יחסית, מגוושים מחדש בגוש עצמו ואת הרשומות הנוספות, בעלות מפתחות גבוהים יותר, שלא נכנסות לגוש, משרשרים למצביע בסוף הגוש. - הכנסת רשומה דורשת : 1. מציאת הגוש הנכון בקובץ הסדרתי. 2. מציאת המקום הנכון בגוש או בשרשרת היוצאת ממנו. יש שני מקרים : א. אם הרשומה החדשה תיקלט בגוש של השטח הראשי – תהיה הזזה של חלק מהרשומות קדימה כך שיווצר מקום. הרשומה האחרונה, שנדחפה מהגוש, תושם בשטח הגלישה עם מצביע גוש אליה. ב. אחרת, הרשומה החדשה תושם בשטח הגלישה ותיקלט במקום המתאים בשרשרת.

17 A. Frank Block-level Chaining (2) רשומות מתווספות : מצב התחלתי מצב סופי גושי גלישה גושי נתונים

18 A. Frank Record vs. Block-level Chaining (1) b ^ ^ ^ ^ Overflow area (displaced records) Record Level Chaining Sequential File (Primary area) Block Level Chaining Index … b שרשור ברמת הגוש : לכל גוש, אם צריך, יש את שרשרת הגלישה שלו. בשטח הגלישה יש שרשור ברמת רשומה, מפני שהרשומות מגיעות באופן אקראי לשטח זה.

19 A. Frank Record vs. Block-level Chaining (2) בשרשור ברמת הרשומה: יש מצביע לכל רשומה. עד Bfr שרשראות גלישה לכל גוש. שרשרות גלישה קצרות יחסית. בקריאת רשומות בסדר לוגי, רצים על הרבה שרשראות גלישה לגוש. בהרבה פניות לגוש יש לעבור על שרשראות גלישה. שולחים לשטח הגלישה את הרשומות המאחרות לבוא (late comers). אפשרי בשטח הראשי ובשטח הגלישה. בשרשור ברמת הגוש: יש מצביע לכל גוש. עד שרשרת גלישה אחת לכל גוש. שרשרות גלישה ארוכות יחסית. בקריאת רשומות בסדר לוגי, רצים על השרשרת פעם אחת. אין בעיה גם עם הרבה פניות לגוש. שולחים לשטח הגלישה את הרשומות שנדחקו החוצה (displaced) מהגוש. אפשרי רק בשטח הראשי.