File Organization
description
Transcript of File Organization
![Page 1: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/1.jpg)
A. Frank
File Organization
Aspects of
Size Parameters
![Page 2: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/2.jpg)
A. Frank
2
Blocking Aspects
גיווש רשומות באורך קבוע – אין בעיה.•גיווש רשומות באורך משתנה – •
אין בעיה לגווש אבל יש בעיה לפתוח גיווש!–בפתיחת גיווש איך יודעים איפה הגבולות בין –
הרשומות המשתנות?
![Page 3: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/3.jpg)
A. Frank
3
How to block variable records?אז איך לגווש רשומות באורך משתנה? •
שיטות אפשריות: בסוף הרשומה. EOR)הוספת תו מיוחד )1.הוספת שדה אורך/מצביע רשומה )לפני 2.
הרשומה(. מערך בגודל קבוע בתחילת כל גוש מכיל 3.
כניסה )אורך/מצביע( עבור כל רשומה בגוש.
מערך בגודל משתנה נבנה בגוש, בכיוון 4.הפוך לכיוון הכנסת הרשומות, ומכיל כניסה
)אורך/מצביע( עבור כל רשומה בגוש.
![Page 4: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/4.jpg)
A. Frank
4
1 .EOR Character
0REOR
EOR0R 1R 2R
EOR …
חסרונות:•.1EOR אינו יכול להופיע ברשומה )חייב להיות תו בקרה
ייחודי(..EORחייבים לסרוק את כל תווי הרשומה כדי לאתר את 2..-תiאין גישה 'ישירה' לרשומה ה-3.Blockגוש
יתרונות:•שיטה פשוטה וחסכונית.1.אין הגבלה על אורך הרשומה.2.
( לסימון גבולות בין Delimiterשימוש בתו הפרדה )•רשומות.
בגודל בית. EOR נניח•
![Page 5: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/5.jpg)
A. Frank
5
2 .Length/Pointer Field
0RP 0RP0R 0R1R 2RP …
חסרונות:•.-תiאין גישה 'ישירה' לרשומה ה-1.(.Pיש הגבלה על אורך הרשומה )לפי גודל 2.
Blockגוש
יתרונות:•שיטה פשוטה יחסית.1.אין הגבלה על התווים ברשומה.2.אין צורך לסרוק את כל תווי הרשומה.3.
לסימון גבולות בין Pשימוש בשדה אורך/מצביע •רשומות.
בתים(.4בגודל מען ) P נניח•
![Page 6: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/6.jpg)
A. Frank
6
3 .Array of length/pointer fields
P 0RP 0R 0R1R 2RP …
חסרונות:•(.Pיש הגבלה על אורך הרשומה )לפי גודל 1.מערך המצביעים הוא בגודל קבוע:2.
אולי אין מספיק כניסות אם הרשומות קצרות.•אולי יש יותר מדי כניסות אם הרשומות ארוכות.•
Blockגוש P
יתרונות:•.2כמו בשיטה 1..-תiיש גישה "ישירה" לרשומה ה-2.
לסימון • מצביע שדות של קבוע בגודל במערך שימושרשומות.
![Page 7: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/7.jpg)
A. Frank
7
4 .Dynamic array of pointer fields
P0R 1R 2R P…
חסרונות:•(.Pיש הגבלה על אורך הרשומה )לפי גודל 1.ניהול מורכב יותר.2.
Blockגוש P
R P
יתרונות:•בשיטה 1. .3כמו.2 , עוד להוסיף אפשר באמצע מקום מספיק יש עוד כל
רשומה.
שימוש במערך בגודל משתנה של שדות מצביע •לסימון רשומות.
![Page 8: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/8.jpg)
A. Frank
8
XP
Records (Un)Spanning
: Unspanned Recordsרשומות ללא מתיחה • זה מקום Xמכיל רשומות שלמות ) הגוש
מבוזבז(.
:Spanned Recordsרשומות עם מתיחה •בין מספר רשומה מסוימת פיצול של יתכן
מצביע אבל דורש – להמשך Pגושים יותר בעייתי ליישום, חיפוש )חסכוני במקום אך
יקר, קושי בעדכון(.
P
1R
0R P
3R
2R P X
P P
1R
0R P
3R
2R P X2R P
PP
P
![Page 9: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/9.jpg)
A. Frank
9
Blocking Aspects
מה היחס בין רשומה לגוש/מגזר?•אם אז לרוב משתמשים בגיווש –
בלי/עם מתיחה. אז חייבים למתוח בלי/עם גיווש. אם –
BR
BR
PP X
PP 1RP
0R
0R0R
0R
![Page 10: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/10.jpg)
A. Frank
10
Reasons for waste in track בזבוז במסילה הוא שטח שאינו מנוצל•
.לנתונים, מה שמהווה תקורה(overhead )
אפשר לקחת בחשבון בזבוז הנגרם בגלל: • (ISG)מרווחים –שיטת הגיווש –מגזרים לא בשימוש–אי ניצול סוף המסילה –
)( nstnsbnbt ))(( TRKISGSnst
)( RBfrB
![Page 11: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/11.jpg)
A. Frank
11
Various Blocking Methods
![Page 12: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/12.jpg)
A. Frank
12
Waste
•Waste - W - בזבוז בבתים לרשומה )הבזבוז הוא שטח לא מנוצל המהווה
לרשומה(. תקורה• W :מורכב רק משני גורמים בזבוז לרשומה בגלל מרווח בין גושים: - •
בזבוז לרשומה בגלל גיווש )כשאין - • מתיחה(:
GW
Bfr
IBGrWG
BfrRWΒ 2~ RWBfr
Bfr
RW BB 00
BW
BG WWW
![Page 13: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/13.jpg)
A. Frank
13
Blocking factor and Waste computations
בשביל רשומות באורך קבוע, כאשר אין מתיחה:•
בשביל רשומות באורך משתנה, כאשר אין מתיחה• מחוון בשביל הרשומה פלוס חלק של אורך חצי רשומה W)ב-
ומרווח(:
בשביל רשומות באורך משתנה, כאשר יש מתיחה• מחוון בשביל הרשומה פלוס חלק של מצביע לגוש הבא W)ב-
ומרווח(:
R
BBfr
Bfr
IBGRPW
2
1
PR
RB
PR
BBfr
2
1
PR
PBBfr
Bfr
IBGPPW
Bfr
IBGRBfrBW
)(
![Page 14: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/14.jpg)
A. Frank
14
Block(ing)/Record Aspects
יש כאן מספר משתנים אפשריים בבניית •קובץ:
(.V( או משתנה )Fגודל גוש קבוע )1.
(.U( או אי-גיווש )Bגיווש )2.
( או אי-מתיחה )' '(.Sמתיחה )3.
גודל רשומה קבוע או משתנה.4.לדוגמה:•
.1FB.גושים קבועים, גיווש, אי-מתיחה –
.2VBS.גושים משתנים, גיווש, מתיחה –
![Page 15: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/15.jpg)
A. Frank
15
Should B be Fixed or Variable? גישות עיקריות:2, יש Bלגבי קביעת גודל •
.1B קבוע – גישה UNIX:ית-ניסיון לקבוע גודל גוש אופטימלי. 1.שיטה פשוטה, גודל המכלא קבוע וכו'.2. K/2K) גדלים 2 יש UNIXבעצם ב-3.
2K/4K ,4K/8K נקבע לפי המחיצה – )המתאימה שבה נמצא הקובץ.
•B משתנה – גישה IBM:ית-יש הרבה צרכים/משימות – שהמתכנת יקבע. •שיטה מורכבת, גודל המכלא משתנה וכו'.•
![Page 16: File Organization](https://reader036.fdocuments.net/reader036/viewer/2022081806/56813b27550346895da3e7ab/html5/thumbnails/16.jpg)
A. Frank
16
Single Unit instead of Block/Sector? סדרי גודל: גם מגזר וגם גוש?2למה צריך •( באיזשהו גודל אופטימלי תספיק?Unitאולי יחידה )•לא! מתברר שיש אילוצים לכאן ולכאן:•
אילוצים להגדלת היחידה אילוצים להקטנת היחידה
שיבוש ביחידהבזבוז בסוף המסילהגודל המכלא בזיכרון
גישה למעט נתונים ביחדעדיף לגודל קבוע
עלות פעולת ק/פ יחידהמספר מרווחים במסילה
גודל טבלת יחידות לקובץגישה להרבה נתונים ביחד
עדיף לגודל משתנהיעיל יותר לגווש?