Introduction
Storing data efficiently on disk is a big challenge for databases. How data records are arranged and stored on pages affects speed and space usage.
Imagine a filing cabinet drawer (page) holding folders (records). The drawer has labels and dividers (slot directory) to find folders quickly. Some folders are all the same size, others vary.
┌─────────────────────────────┐ │ Page │ │ ┌───────────────┐ │ │ │ Record 1 │ │ │ ├───────────────┤ │ │ │ Record 2 │ │ │ ├───────────────┤ │ │ │ Record 3 │ │ │ ├───────────────┤ │ │ │ Free Space │ │ │ ├───────────────┤ │ │ │ Slot Directory│ │ │ └───────────────┘ │ └─────────────────────────────┘