Physical Database Design is the process of converting a logical data model into a physical schema that can be implemented on a specific DBMS. It deals with how data is actually stored, organized, and accessed on hardware.
- Selecting storage structures (heap, clustered, hash)
- Choosing file organizations for tables
- Defining indexes to speed up queries
- Partitioning large tables horizontally or vertically
- Choosing storage engine (InnoDB, MyISAM, etc.)
- Deciding on buffer pool / cache sizes
Consider a Students table with millions of rows. Physical design decisions:
Here, InnoDB stores rows in B+ tree order of student_id. The secondary index on dept speeds up queries like "find all CS students" without full table scan.