CMU SCS Faloutsos - PavloCMU SCS 15-415/615#1 Carnegie Mellon Univ. Dept. of Computer Science 15-415/615 - DB Applications C. Faloutsos & A. Pavlo Lecture.

Slides:



Advertisements
Similar presentations
CALENDAR.
Advertisements

CHAPTER 18 The Ankle and Lower Leg
The 5S numbers game..
The basics for simulations
The Bare Basics Storing Data on Disks and Files
Storing Data: Disk Organization and I/O
Storing Data: Disks and Files Chapter 9
Storing Data: Disks and Files CS 186 Spring 2006, Lecture 3 (R&G Chapter 9) Yea, from the table of my memory Ill wipe away all trivial fond records. --
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 9 Yea, from the table of my memory Ill wipe away.
1 Handout 5CIS 550, Fall 2001 Storage, Indexing and Joins Slides taken from Database Management Systems, R. Ramakrishnan CIS 550 Fall 2000 Handout 5.
1 Storing Data: Disks and Files Chapter 7. 2 Disks and Files v DBMS stores information on (hard) disks. v This has major implications for DBMS design!
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke, edited K/Shomper1 Storing Data: Disks and Files Chapter 9 Yea, from the table of my memory.
Storing Data: Disks and Files
5. Disk, Pages and Buffers Why Not Store Everything in Main Memory
Storing Data: Disks and Files
CPSC 404, Laks, based on Ramakrishnan & Gherke and Garcia-Molina et al.1 Review 1-- Storing Data: Disks and Files Chapter 9 [Sections : Ramakrishnan.
1 Storing Data Disks and Files Yea, from the table of my memory Ill wipe away all trivial fond records. -- Shakespeare, Hamlet.
FILES (AND DISKS).
Database Management Systems, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 7 Yea, from the table of my memory Ill wipe away all.
Buffer Management Notes Adapted from Prof Joe Hellersteins notes
MaK_Full ahead loaded 1 Alarm Page Directory (F11)
Before Between After.
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
Static Equilibrium; Elasticity and Fracture
A Data Warehouse Mining Tool Stephen Turner Chris Frala
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
CS4432: Database Systems II Buffer Manager 1. 2 Covered in week 1.
Introduction to Database Systems1 Records and Files Storage Technology: Topic 3.
Database Management Systems, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 7.
Storing Data: Disks and Files
Buffer management.
1 Storing Data: Disks and Files Yanlei Diao UMass Amherst Feb 15, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
Murali Mani Overview of Storage and Indexing (based on slides from Wisconsin)
Storing Data: Disks and Files Lecture 5 (R&G Chapter 9) “Yea, from the table of my memory I’ll wipe away all trivial fond records.” -- Shakespeare, Hamlet.
The Relational Model (cont’d) Introduction to Disks and Storage CS 186, Spring 2007, Lecture 3 Cow book Section 1.5, Chapter 3 (cont’d) Cow book Chapter.
Storing Data: Disks and Files Lecture 3 (R&G Chapter 9) “Yea, from the table of my memory I’ll wipe away all trivial fond records.” -- Shakespeare, Hamlet.
1 Database Systems November 12/14, 2007 Lecture #7.
Introduction to Database Systems 1 Storing Data: Disks and Files Chapter 3 “Yea, from the table of my memory I’ll wipe away all trivial fond records.”
Introduction to Database Systems 1 The Storage Hierarchy and Magnetic Disks Storage Technology: Topic 1.
Layers of a DBMS Query optimization Execution engine Files and access methods Buffer management Disk space management Query Processor Query execution plan.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 9.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 7.
Physical Storage Susan B. Davidson University of Pennsylvania CIS330 – Database Management Systems November 20, 2007.
Introduction to Database Systems 1 Storing Data: Disks and Files Chapter 3 “Yea, from the table of my memory I’ll wipe away all trivial fond records.”
Database Management Systems, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Chapter 7 “ Yea, from the table of my memory I ’ ll wipe away.
1 Storing Data: Disks and Files Chapter 9. 2 Disks and Files  DBMS stores information on (“hard”) disks.  This has major implications for DBMS design!
“Yea, from the table of my memory I’ll wipe away all trivial fond records.” -- Shakespeare, Hamlet.
Database Management Systems,Shri Prasad Sawant. 1 Storing Data: Disks and Files Unit 1 Mr.Prasad Sawant.
Exam I Grades uMax: 96, Min: 37 uMean/Median:66, Std: 18 uDistribution: w>= 90 : 6 w>= 80 : 12 w>= 70 : 9 w>= 60 : 9 w>= 50 : 7 w>= 40 : 11 w>= 30 : 5.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Storing Data: Disks and Files Content based on Chapter 9 Database Management Systems, (3.
Database Management Systems, R. Ramakrishnan and J. Gehrke 1 Storing Data: Disks and Files Chapter 7 Jianping Fan Dept of Computer Science UNC-Charlotte.
1 Storing Data: Disks and Files Chapter 9. 2 Objectives  Memory hierarchy in computer systems  Characteristics of disks and tapes  RAID storage systems.
Database Applications (15-415) DBMS Internals: Part II Lecture 12, February 21, 2016 Mohammad Hammoud.
The very Essentials of Disk and Buffer Management.
CS222: Principles of Data Management Lecture #4 Catalogs, Buffer Manager, File Organizations Instructor: Chen Li.
CS522 Advanced database Systems
Storing Data: Disks and Files
Storing Data: Disks and Files
Database Applications (15-415) DBMS Internals: Part II Lecture 11, October 2, 2016 Mohammad Hammoud.
CS222/CS122C: Principles of Data Management Lecture #3 Heap Files, Page Formats, Buffer Manager Instructor: Chen Li.
Database Management Systems (CS 564)
Storing Data: Disks and Files
Lecture 10: Buffer Manager and File Organization
Database Systems November 2, 2011 Lecture #7.
Database Applications (15-415) DBMS Internals: Part III Lecture 14, February 27, 2018 Mohammad Hammoud.
5. Disk, Pages and Buffers Why Not Store Everything in Main Memory
Storing Data: Disks and Files
Basics Storing Data on Disks and Files
Storing Data: Disks and Files
CS222/CS122C: Principles of Data Management UCI, Fall 2018 Notes #03 Row/Column Stores, Heap Files, Buffer Manager, Catalogs Instructor: Chen Li.
Presentation transcript:

CMU SCS Faloutsos - PavloCMU SCS /615#1 Carnegie Mellon Univ. Dept. of Computer Science /615 - DB Applications C. Faloutsos & A. Pavlo Lecture #8 (R&G ch9) Storing Data: Disks and Files

CMU SCS Faloutsos - PavloCMU SCS /615#2 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#3 DBMS Layers: Query Optimization and Execution Relational Operators Files and Access Methods Buffer Management Disk Space Management DB Queries TODAY

CMU SCS Faloutsos - PavloCMU SCS /615#4 Leverage OS for disk/file management? Layers of abstraction are good … but:

CMU SCS Faloutsos - PavloCMU SCS /615#5 Leverage OS for disk/file management? Layers of abstraction are good … but: –Unfortunately, OS often gets in the way of DBMS

CMU SCS Faloutsos - PavloCMU SCS /615#6 Leverage OS for disk/file management? DBMS wants/needs to do things its own way –Specialized prefetching –Control over buffer replacement policy LRU not always best (sometimes worst!!) –Control over thread/process scheduling Convoy problem –Arises when OS scheduling conflicts with DBMS locking –Control over flushing data to disk WAL protocol requires flushing log entries to disk

CMU SCS Faloutsos - PavloCMU SCS /615#7 Disks and Files DBMS stores information on disks. –but: disks are (relatively) VERY slow! Major implications for DBMS design!

CMU SCS Faloutsos - PavloCMU SCS /615#8 Disks and Files Major implications for DBMS design: –READ: disk -> main memory (RAM). –WRITE: reverse –Both are high-cost operations, relative to in-memory operations, so must be planned carefully!

CMU SCS Faloutsos - PavloCMU SCS /615#9 Why Not Store It All in Main Memory?

CMU SCS Faloutsos - PavloCMU SCS /615#10 Why Not Store It All in Main Memory? Costs too much. –disk: ~$0.1/Gb; memory: ~$10/Gb –High-end Databases today in the TB range. –Approx 60% of the cost of a production system is in the disks. Main memory is volatile. Note: some specialized systems do store entire database in main memory.

CMU SCS Faloutsos - PavloCMU SCS /615#11 The Storage Hierarchy Smaller, Faster Bigger, Slower

CMU SCS Faloutsos - PavloCMU SCS /615#12 The Storage Hierarchy –Main memory (RAM) for currently used data. –Disk for the main database (secondary storage). –Tapes for archiving older versions of the data (tertiary storage). Smaller, Faster Bigger, Slower Registers L1 Cache Main Memory Magnetic Disk Magnetic Tape...

CMU SCS Faloutsos - PavloCMU SCS /615#13 The Storage Hierarchy –Main memory (RAM) for currently used data. –Disk for the main database (secondary storage). –Tapes for archiving older versions of the data (tertiary storage). Smaller, Faster Bigger, Slower Registers L1 Cache Main Memory Magnetic Disk Magnetic Tape... SSD

CMU SCS Faloutsos - PavloCMU SCS /615#14 Jim Grays Storage Latency Analogy: How Far Away is the Data?

CMU SCS Faloutsos - PavloCMU SCS /615#15 Disks Secondary storage device of choice. Main advantage over tapes: random access vs. sequential. Data is stored and retrieved in units called disk blocks or pages. Unlike RAM, time to retrieve a disk page varies depending upon location on disk. –relative placement of pages on disk is important!

CMU SCS Faloutsos - PavloCMU SCS /615#16 Anatomy of a Disk Platters Spindle Sector Track Cylinder Platter Block size = multiple of sector size (which is fixed) Disk head Arm movement Arm assembly Tracks Sector

CMU SCS Faloutsos - PavloCMU SCS /615#17 Accessing a Disk Page Time to access (read/write) a disk block: –.

CMU SCS Faloutsos - PavloCMU SCS /615#18 Accessing a Disk Page Time to access (read/write) a disk block: –seek time: moving arms to position disk head on track –rotational delay: waiting for block to rotate under head –transfer time: actually moving data to/from disk surface

CMU SCS Faloutsos - PavloCMU SCS /615#19 Seek Time 3x to 20x x 1N Cylinders Traveled Time Arm movement … A? B? C?

CMU SCS Faloutsos - PavloCMU SCS /615#20 Seek Time 3x to 20x x 1N Cylinders Traveled Time Arm movement …

CMU SCS Faloutsos - PavloCMU SCS /615#21 Head Here Block I Want Rotational Delay

CMU SCS Faloutsos - PavloCMU SCS /615#22 Accessing a Disk Page Relative times? –seek time: –rotational delay: –transfer time:

CMU SCS Faloutsos - PavloCMU SCS /615#23 Accessing a Disk Page Relative times? –seek time: about 1 to 20msec –rotational delay: 0 to 10msec –transfer time: < 1msec per 4KB page Transfer Seek Rotate transfer

CMU SCS Faloutsos - PavloCMU SCS /615#24 Seek time & rotational delay dominate Key to lower I/O cost: reduce seek/rotation delays! Also note: For shared disks, much time spent waiting in queue for access to arm/controller Seek Rotate transfer

CMU SCS Faloutsos - PavloCMU SCS /615#25 Arranging Pages on Disk Next block concept: –blocks on same track, followed by –blocks on same cylinder, followed by –blocks on adjacent cylinder Accesing next block is cheap An important optimization: pre-fetching –See R&G page 323 Q1: Why not equal? … Q2: Why?

CMU SCS Faloutsos - PavloCMU SCS /615#26 Rules of thumb… 1.Memory access much faster than disk I/O (~ 1000x) Sequential I/O faster than random I/O (~ 10x)

CMU SCS Faloutsos - PavloCMU SCS /615#27 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#28 Disk Arrays: RAID Benefits: –Higher throughput (via data striping) –Longer MTTF Logical Physical (Why?) Prof. Garth Gibson

CMU SCS Faloutsos - PavloCMU SCS /615#29 Disk Arrays: RAID Benefits: –Higher throughput (via data striping) –Longer MTTF (via redundancy) Logical Physical

CMU SCS Faloutsos - PavloCMU SCS /615#30 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#31 Disk Space Management Lowest layer of DBMS software manages space on disk Higher levels call upon this layer to: –allocate/de-allocate a page –read/write a page Best if requested pages are stored sequentially on disk! Higher levels dont need to know if/how this is done, nor how free space is managed.

CMU SCS Faloutsos - PavloCMU SCS /615#32 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#33 Recall: DBMS Layers Query Optimization and Execution Relational Operators Files and Access Methods Buffer Management Disk Space Management DB Queries TODAY

CMU SCS Faloutsos - PavloCMU SCS /615#34 Buffer Management in a DBMS DB MAIN MEMORY DISK (copy of a) disk page free frame Page Requests from Higher Levels buffer pool choice of frame dictated by replacement policy

CMU SCS Faloutsos - PavloCMU SCS /615#35 Buffer Management in a DBMS Data must be in RAM for DBMS to operate on it! Buffer Mgr hides the fact that not all data is in RAM

CMU SCS Faloutsos - PavloCMU SCS /615#36 When a Page is Requested... Buffer pool information table contains: If requested page is not in pool: –Choose an (un-pinned) frame for replacement If frame is dirty, write it to disk –Read requested page into chosen frame Pin the page and return its address

CMU SCS Faloutsos - PavloCMU SCS /615#37 When a Page is Requested... Buffer pool information table contains: If requested page is not in pool: –Choose an (un-pinned) frame for replacement If frame is dirty, write it to disk –Read requested page into chosen frame Pin the page and return its address

CMU SCS Faloutsos - PavloCMU SCS /615#38 When a Page is Requested... If requests can be predicted (e.g., sequential scans) then pages can be pre-fetched several pages at a time!

CMU SCS Faloutsos - PavloCMU SCS /615#39 More on Buffer Management When done, requestor of page must – unpin it, and –indicate whether page has been modified: dirty bit Page in pool may be requested many times: –pin count if pin count = 0 (unpinned), page is candidate for replacement

CMU SCS Faloutsos - PavloCMU SCS /615#40 More on Buffer Management CC & recovery may entail additional I/O when a frame is chosen for replacement. (Write-Ahead Log protocol; more later.)

CMU SCS Faloutsos - PavloCMU SCS /615#41 Buffer Replacement Policy Frame is chosen for replacement by a replacement policy: –Least-recently-used (LRU), MRU, Clock, etc. Policy -> big impact on # of I/O s; depends on the access pattern.

CMU SCS Faloutsos - PavloCMU SCS /615#42 LRU Replacement Policy Least Recently Used (LRU) –for each page in buffer pool, keep track of time last unpinned –replace the frame which has the oldest (earliest) time –very common policy: intuitive and simple Problems?

CMU SCS Faloutsos - PavloCMU SCS /615#43 LRU Replacement Policy Problem: Sequential flooding –LRU + repeated sequential scans. – # buffer frames < # pages in file means each page request causes an I/O. MRU much better in this situation (but not in all situations, of course).

CMU SCS Faloutsos - PavloCMU SCS /615#44 Sequential Flooding – Illustration BUFFER POOL LRU: MRU: Repeated scan of file … BUFFER POOL

CMU SCS Faloutsos - PavloCMU SCS /615#45 Sequential Flooding – Illustration BUFFER POOL LRU: MRU: Repeated scan of file … BUFFER POOL will not re-use these pages;

CMU SCS Faloutsos - PavloCMU SCS /615#46 Other policies? LRU is often good - but needs timestamps and sorting on them something easier to maintain?

CMU SCS Faloutsos - PavloCMU SCS /615#47 Main ideas: Approximation of LRU. Instead of maintaining & sorting time-stamps, find a reasonably old frame to evict. How? by round-robin, and marking each frame - frames are evicted the second time they are visited. Specifically: Clock Replacement Policy

CMU SCS Faloutsos - PavloCMU SCS /615#48 Arrange frames into a cycle, store one reference bit per frame When pin count goes to 0, reference bit set on (= one life left - not ready for eviction yet) When replacement necessary, get the next frame that has reference-bit = 0 Clock Replacement Policy A(1) B(1) C(1) D(0)

CMU SCS Faloutsos - PavloCMU SCS /615#49 do { if (pincount == 0 && ref bit is off) choose current page for replacement; else if (pincount == 0 && ref bit is on) turn off ref bit; advance current frame; } until a page is chosen for replacement; Clock Replacement Policy A(1) B(1) C(1) D(0)

CMU SCS Faloutsos - PavloCMU SCS /615#50 Clock Replacement Policy A(1) B(0) C(1) D(0)

CMU SCS Faloutsos - PavloCMU SCS /615#51 Clock Replacement Policy A(1) B(0) C(0) D(0)

CMU SCS Faloutsos - PavloCMU SCS /615#52 Clock Replacement Policy A(1) B(0) C(0) D(0)

CMU SCS Faloutsos - PavloCMU SCS /615#53 Summary Buffer manager brings pages into RAM. Very important for performance –Page stays in RAM until released by requestor. –Written to disk when frame chosen for replacement (which is sometime after requestor releases the page). –Choice of frame to replace based on replacement policy. –Good to pre-fetch several pages at a time.

CMU SCS Faloutsos - PavloCMU SCS /615#54 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#55 Files FILE: A collection of pages, each containing a collection of records. Must support: –insert/delete/modify record –read a particular record (specified using record id) –scan all records (possibly with some conditions on the records to be retrieved)

CMU SCS Faloutsos - PavloCMU SCS /615#56 Alternative File Organizations Several alternatives (w/ trade-offs): –Heap files: Suitable when typical access is a file scan retrieving all records. –Sorted Files: –Index File Organizations: later

CMU SCS Faloutsos - PavloCMU SCS /615#57 Files of records Heap of pages –as linked list or –directory of pages

CMU SCS Faloutsos - PavloCMU SCS /615#58 Heap File Using Lists The header page id and Heap file name must be stored someplace. Each page contains 2 `pointers plus data. Header Page Data Page Data Page Data Page Free Page Free Page Free Page Pages with Free Space Full Pages

CMU SCS Faloutsos - PavloCMU SCS /615#59 Heap File Using Lists Any problems? Header Page Data Page Data Page Data Page Free Page Free Page Free Page Pages with Free Space Full Pages

CMU SCS Faloutsos - PavloCMU SCS /615#60 Heap File Using a Page Directory Data Page 1 Data Page 2 Data Page N Header Page DIRECTORY

CMU SCS Faloutsos - PavloCMU SCS /615#61 Heap File Using a Page Directory The entry for a page can include the number of free bytes on the page. The directory is a collection of pages; linked list implementation is just one alternative. –Much smaller than linked list of all HF pages!

CMU SCS Faloutsos - PavloCMU SCS /615#62 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#63 Page Formats fixed length records variable length records

CMU SCS Faloutsos - PavloCMU SCS /615#64 Page Formats Important concept: rid == record id Q0: why do we need it? Q1: How to mark the location of a record? Q2: Why not its byte offset in the file?

CMU SCS Faloutsos - PavloCMU SCS /615#65 Page Formats Important concept: rid == record id Q0: why do we need it? A0: eg., for indexing Q1: How to mark the location of a record? A1: Q2: Why not its byte offset in the file? A2:

CMU SCS Faloutsos - PavloCMU SCS /615#66 Page Formats Important concept: rid == record id Q0: why do we need it? A0: eg., for indexing Q1: How to mark the location of a record? A1: rid = record id = page-id & slot-id Q2: Why not its byte offset in the file? A2:

CMU SCS Faloutsos - PavloCMU SCS /615#67 Page Formats Important concept: rid == record id Q0: why do we need it? A0: eg., for indexing Q1: How to mark the location of a record? A1: rid = record id = page-id & slot-id Q2: Why not its byte offset in the file? A2: too much re-organization on ins/del.

CMU SCS Faloutsos - PavloCMU SCS /615#68 Fixed length records Q: How would you store them on a page/file?

CMU SCS Faloutsos - PavloCMU SCS /615#69 Fixed length records Q: How would you store them on a page/file? A1: How about: slot #1 slot #2... N number of full slots slot #N free space Packed

CMU SCS Faloutsos - PavloCMU SCS /615#70 Fixed length records A1: How about: BUT: On insertion/deletion, we have too much to reorganize/update slot #1 slot #2... N number of full slots slot #N free space Packed

CMU SCS Faloutsos - PavloCMU SCS /615#71 Fixed length records What would you do?

CMU SCS Faloutsos - PavloCMU SCS /615#72 Fixed length records Q: How would you store them on a page/file? A2: Bitmaps slot #1 slot #2... slot #N free slots M 10 page header

CMU SCS Faloutsos - PavloCMU SCS /615#73 Variable length records Q: How would you store them on a page/file?... page header occupied records

CMU SCS Faloutsos - PavloCMU SCS /615#74 Variable length records Q: How would you store them on a page/file?... page header occupied records pack them keep ptrs to them slot directory other info (# slots etc)

CMU SCS Faloutsos - PavloCMU SCS /615#75 Variable length records Q: How would you store them on a page/file?... page header occupied records pack them keep ptrs to them mark start of free space slot directory other info (# slots etc)

CMU SCS Faloutsos - PavloCMU SCS /615#76 Variable length records Q: How would you store them on a page/file?... page header occupied records how many disk accesses to insert a record? to delete one?

CMU SCS Faloutsos - PavloCMU SCS /615#77 Variable length records SLOTTED PAGE organization - popular.... page header occupied records

CMU SCS Faloutsos - PavloCMU SCS /615#78 Overview Memory hierarchy RAID (briefly) Disk space management Buffer management Files of records Page Formats Record Formats

CMU SCS Faloutsos - PavloCMU SCS /615#79 Formats of records Fixed length records –How would you store them? Variable length records

CMU SCS Faloutsos - PavloCMU SCS /615#80 Record Formats: Fixed Length Information about field types same for all records in a file; stored in system catalogs. Finding ith field done via arithmetic. Base address (B) L1L2 L3L4 F1F2 F3F4 Address = B+L1+L2

CMU SCS Faloutsos - PavloCMU SCS /615#81 Formats of records Fixed length records: straightforward - store info in catalog Variable length records: encode the length of each field –?

CMU SCS Faloutsos - PavloCMU SCS /615#82 Formats of records Fixed length records: straightforward - store info in catalog Variable length records: encode the length of each field –store its length or –use a field delimiter

CMU SCS Faloutsos - PavloCMU SCS /615#83 Variable Length records Two alternative formats (# fields is fixed): Pros and cons? $$ $$ Fields Delimited by Special Symbols F1 F2 F3 F4 Array of Field Offsets

CMU SCS Faloutsos - PavloCMU SCS /615#84 Variable Length records Two alternative formats (# fields is fixed): Offset approach: usually superior (direct access to i-th field) $$ $$ Fields Delimited by Special Symbols F1 F2 F3 F4 Array of Field Offsets

CMU SCS Faloutsos - PavloCMU SCS /615#85 Conclusions Memory hierarchy Disks: (>1000x slower) - thus –pack info in blocks –try to fetch nearby blocks (sequentially) Buffer management: very important –LRU, MRU, Clock, etc Record organization: Slotted page