Data Modeling

Types of data models and data modeling techniques in DBMS

Data models are classified in two ways. By level of detail there are three: conceptual, logical and physical. By structure there are the classic DBMS models: hierarchical, network, relational, entity-relationship, object-oriented and dimensional, plus document and graph. This guide explains each with an example and says which to use for what.

Data ModelingIevgen Krasovytskyi7 min read

Types of data models and data modeling techniques in DBMS

There are two answers to “what are the types of data models”, because data models are classified in two ways.

  • By level of detail there are three: conceptual, logical and physical. They describe the same data, from a whiteboard sketch down to tables in a specific database.
  • By structure there are the classic DBMS models: hierarchical, network, relational, entity-relationship, object-oriented and dimensional, with document and graph models as later additions.

A real project uses one from each list. A reporting warehouse, for example, is usually a dimensional structure taken through all three levels.

What a data model is

What a data model is

A data model is a description of data: what things are recorded, what is known about each, and how they relate. It is written before the database and outlives any single report built on it.

A model answers three questions. What are the entities (customer, order, product)? What attributes does each have? How are they connected, and how many of one go with how many of the other? Everything else, from table design to the totals in a dashboard, follows from those answers. For the process of building one, see what is data modeling. For the description of what the data means and how each number is calculated, see semantic data models.

Types of data models at a glance

Types of data models at a glance

Type Classified by Shape Used for
Conceptual Level Entities and relationships, no detail Agreeing scope with the business
Logical Level Entities, attributes, keys, no vendor Designing the structure
Physical Level Tables, types, indexes on one database Building it
Hierarchical Structure Tree, one parent per record File systems, directories, XML
Network Structure Graph, many parents per record Legacy mainframe systems
Relational Structure Tables joined by keys Most business applications
Entity-relationship Structure Diagram of entities and relationships Designing relational databases
Object-oriented Structure Objects with attributes and methods Complex objects, CAD, media
Dimensional Structure Fact tables and dimension tables Reporting and analytics
Document and graph Structure Nested documents, nodes and edges Flexible content, connected data

The Turning Point

OWOX Data Marts

See your first report built in real time. 15 minutes.

  1. Connect your data warehouse
  2. Pick your metrics
  3. Get a live Google Sheets report

In the time it takes to write a ticket. Then imagine never writing that ticket again.

Book a Demo

We'll use your actual use case

The three levels: conceptual, logical and physical

The three levels: conceptual, logical and physical

The three levels are stages of one design, not alternatives. Each adds detail the previous one left out.

Conceptual data model

A conceptual model names the things the business tracks and how they relate. It has no data types and no keys, and it should be readable by someone who has never written SQL.

Hand-drawn conceptual data model of a sales process: Customer, SalesOrder, SalesOrderItem, Product, Region and SalesRep with lines between them.

Its job is agreement. If sales and finance mean different things by “customer”, this is the cheapest place to find out. More in conceptual data modeling with examples.

Logical data model

A logical model adds every attribute, the primary and foreign keys, and the cardinality of each relationship. It is still independent of any database product.

Logical data model: Customer, Order, OrderItem, Product, Warehouse and Courier entities with attributes and key relationships.

This is where structure is decided: what one row of each entity stands for, and which key connects it to the next.

Physical data model

A physical model is the logical model made concrete for one database: table and column names, data types, constraints, indexes, partitions.

Physical data model: Customer, Order, OrderItem and Product tables with data types, not-null markers and foreign keys.

The same logical model produces different physical models on different platforms. A date column, a partition and a nested field are not declared the same way everywhere. For a side-by-side comparison, see logical vs physical data models.

Conceptual Logical Physical
Shows Entities, relationships Plus attributes, keys Plus types, indexes
Depends on a database No No Yes
Main reader Business and analysts Analysts, architects Engineers

Types of data models in DBMS, by structure

Types of data models in DBMS, by structure

The second classification is about how records are organised and linked. These are the models a DBMS course lists, in roughly the order they appeared.

Hierarchical data model

Data is a tree. Each record has one parent and any number of children, and you reach a record by walking down from the root. IBM’s IMS, built in the 1960s, is the classic example.

Hierarchical data model: ProductCategory is the parent of Product, which is the parent of SalesTransaction.

Example: category, then product, then sale. It is fast when questions follow the tree and awkward when they do not. A product in two categories has to be stored twice.

Network data model

The network model removes the one-parent limit: a record can have several parents, so the structure is a graph. It was standardised by CODASYL around 1970.

Example: an order line belongs both to an order and to a product. This handles many-to-many relationships, at the cost of programs that have to navigate the links by hand.

Relational data model

Data lives in tables. Rows are connected by matching values in key columns, and SQL retrieves them without the program knowing how they are stored. E. F. Codd proposed the model in 1970, and it is the default for business systems.

Relational data model: Customers, Orders, OrderDetails and Products tables linked by primary and foreign keys.

Example: Customers, Orders, OrderDetails and Products, joined on customer, order and product ids.

Entity-relationship model

The entity-relationship (ER) model, introduced by Peter Chen in 1976, is a way of drawing a design: entities as boxes, relationships as lines, attributes listed inside. It is a design notation more than a storage model, and most relational databases start as an ER diagram.

Example: the three diagrams in the previous section are all ER diagrams at different levels of detail.

Object-oriented data model

Data is stored as objects that bundle attributes with the methods that act on them, organised into classes with inheritance. It suits applications with complex, nested objects.

Example: DigitalProduct and PhysicalProduct both inherit name and price from Product. Details in object-oriented data models.

Dimensional data model

The dimensional model is built for reporting. Measurable events go into fact tables, and the things that describe them go into dimension tables. The usual layout is a star schema.

Dimensional data model: a SalesFact table joined to ProductDim, CustomerDim and DateDim.

Example: a sales fact with quantity and amount, joined to product, customer and date dimensions. See star schema, snowflake schema and dimensional data modeling.

Document and graph models

Two later structures are common outside the classic list. A document model stores each record as a nested document, which suits content whose shape varies. A graph model stores nodes and the edges between them, which suits questions about connections, such as fraud rings or recommendations.

Which data model to use

Which data model to use

Pick by the question the system has to answer most often.

If you need to Use
Record transactions reliably in an application Relational, in normalized form
Report and aggregate across many records Dimensional, as a star schema
Store complex objects exactly as the program holds them Object-oriented or document
Follow connections several steps deep Graph
Agree what the data means before building anything Conceptual model first, in any of the above

Most companies end up with two: a relational model inside each application and a dimensional model in the warehouse where the applications’ data is combined for reporting.

What a data model gives you, and what it does not

What a data model gives you, and what it does not

A model that is written down gives a team three things:

  • One definition per thing. “Customer” and “order” mean the same in every table.
  • Joins that are decided once. The keys and the cardinality are in the model, so nobody guesses them in a query.
  • Cheaper change. A new source or metric is fitted into a known structure instead of bolted onto a report.

It does not keep itself true. A diagram in a wiki drifts from the tables within weeks, and a correct model does not stop a report from reading the wrong table. The common failure modes are in mistakes in data modeling.

From a data model to reports people can check

From a data model to reports people can check

For reporting, the practical test of a data model is whether the people building reports are held to it.

In OWOX Data Marts the model is made of the same objects the reports read. Each entity is a Data Mart: SQL, a table or a view that an analyst defines, with a description, an owner and described fields. The lines in the diagram are relationships between Data Marts, declared on their join keys. Together, the Data Marts in one data storage are the data model.

A report in Google Sheets or Looker Studio then picks fields from Data Marts and uses the declared joins. The model is not a separate document that can fall behind, because it is what the reports run on. The analyst still designs it and writes the SQL. The product publishes and governs it.

To start from an existing design instead of a blank page, the industry data models are worked examples, with walkthroughs for e-commerce, SaaS, fintech, healthcare and marketplaces, and Joinable Data Marts explains how relationships are declared.

Your New Normal

Turn your data into decisions.

Governed data marts give you the clean foundation ML needs to actually work.

  • No AI hallucinations
  • Analyst-governed definitions
  • Every number traces to SQL
Get started free

FAQ

Frequently Asked Questions

Which data model is used for reporting and analytics?

The dimensional model, usually laid out as a star schema: fact tables hold measurable events and dimension tables hold the things that describe them. Applications that record transactions use a normalized relational model, and the warehouse combines their data in dimensional form.

What are the types of data models?

By level of detail there are three: conceptual, logical and physical. By structure there are the classic DBMS models: hierarchical, network, relational, entity-relationship, object-oriented and dimensional, with document and graph models as later additions. A real project uses one from each list.

Who wrote this

Ievgen Krasovytskyi

Ievgen Krasovytskyi · Head of Marketing

Ievgen Krasovytskyi is the Head of Marketing at OWOX, leading strategy across content, SEO, product marketing, and AI-powered automation. With deep expertise in analytics infrastructure, data warehouses, and marketing technology, he builds systems that connect marketing performance to business outcomes. Ievgen writes about SaaS growth, analytics workflows, and the future of AI in marketing operations.