Physical Data Model

The physical data model translates a logical model into the specific DDL and configuration for a target DBMS. It addresses how data is stored — data types, indexes, partitions, tablespaces, and storage parameters.

What It Specifies

AspectExample
SQL Data TypesVARCHAR(255), INTEGER, TIMESTAMP WITH TIME ZONE
IndexesB-Tree on foreign keys, GIN on tsvector columns
Database ConstraintsNOT NULL, CHECK, UNIQUE, FOREIGN KEY with referential actions
PartitioningRange partition by date, hash partition by tenant_id
StorageTablespace allocation, fill factor, compression
DBMS-specific featuresPostgreSQL SERIAL, SQLite WITHOUT ROWID, MySQL ENGINE=InnoDB

Design Workflow Position

graph LR
    A["[[Conceptual Data Modeling|Conceptual]]"] --> B["[[Logical Data Modeling|Logical]]"]
    B --> C["Physical"]
    C --> D["Implementation<br/>(CREATE TABLE)"]
    D --> E["Tuning<br/>([[Explain Analyze]])"]