home
diamond Go Premium
Data Engineering Path  ·  Data Modelling

Types of Data Modelling

Data modelling is not a one-size-fits-all task. It is a progressive process that evolves from abstract business concepts to highly technical database schemas. The three primary types of data models are Conceptual, Logical, and Physical.


1. Conceptual Data Model

The Conceptual Data Model is the highest-level view of the data. It focuses entirely on what data is required by the business, without worrying about how it will be structured or stored.

  • Audience: Business Stakeholders, Product Managers, Data Architects.
  • Purpose: To define the scope of the system and establish common business vocabulary.
  • Key Elements:
    • Core Entities (e.g., Customer, Store, Product).
    • High-level relationships between entities.
  • What it excludes: Attributes, primary keys, data types, and database-specific logic.

2. Logical Data Model

The Logical Data Model takes the Conceptual Model and adds detail. It focuses on how the model should be structured based on business rules, independent of any specific database technology (like MySQL vs. Oracle).

  • Audience: Data Modellers, Business Analysts, System Architects.
  • Purpose: To develop a clear, comprehensive map of the data structures and relationships.
  • Key Elements:
    • All Entities and their complete set of Attributes.
    • Primary Keys (PK) and Foreign Keys (FK).
    • Data constraints and rules (e.g., "Email must be unique").
    • Normalization (typically resolving Many-to-Many relationships into associative entities).
  • What it excludes: Technical implementation details like indexes, exact field lengths (e.g., VARCHAR(255)), or table partitions.

3. Physical Data Model

The Physical Data Model represents the actual design of the database. It translates the Logical Model into specific syntax and structures required by the chosen Database Management System (DBMS).

  • Audience: Database Administrators (DBAs), Data Engineers, Backend Developers.
  • Purpose: To generate the SQL (or NoSQL commands) needed to physically create the database schema.
  • Key Elements:
    • Tables, Columns, and precise Data Types (e.g., INT8, TIMESTAMP, VARCHAR(50)).
    • Indexes (B-Tree, Hash) for performance tuning.
    • Triggers, Views, and Stored Procedures.
    • Storage configurations like partitioning and sharding rules.

Quick Comparison

Feature Conceptual Model Logical Model Physical Model
Focus Business concepts Data structures & rules Database implementation
Entities Yes Yes Yes (as Tables)
Attributes No Yes Yes (as Columns)
Primary/Foreign Keys No Yes Yes
Specific Data Types No No Yes (e.g., INT, JSONB)
Indexes & Partitions No No Yes
Database Agnostic? Yes Yes No (Tied to specific DBMS)

Tip

Real-world Practice: In modern, fast-paced Agile development, teams often merge the Conceptual and Logical phases directly into whiteboard sessions, jumping straight into designing the Physical Model based on the immediate engineering requirements.

Find this content helpful? ☕ Buy me a coffee

Entity Details

Create New Item

help

Submit Technical Query

Have a question or run into an issue? Describe it below, upload an optional screenshot, and our engineering team will answer it!

image Attach image (optional)

Submit Feedback

build Free Developer Utility Free Tool
gavel

Privacy & Legal Disclaimer

1. Client-Side Browser Processing

All utility tools on DeepEngineerHub (including Image to PDF, Text Formatters, JSON Converters, and Encryptors) execute 100% locally within your client browser using WebAssembly and JavaScript. No uploaded images, text, or documents are transmitted, collected, or stored on remote servers.

2. Limitation of Liability ("As-Is" Provision)

Tools and services are provided free of charge for convenience and educational purposes "as-is" without warranties of any kind. DeepEngineerHub shall not be held liable for any data loss, formatting inconsistencies, or indirect damages resulting from tool usage.

3. Open Source & Third-Party Software

Certain utilities utilize open-source client libraries (such as jsPDF, Mermaid.js, Pyodide) licensed under MIT, Apache, or BSD open licenses. All intellectual property remains with their respective copyright holders.