Table of Contents
Data models are fundamental concepts in DBMS that help in database design. They enable communication between database designers, application developers, and end-users.
A Data model defines how data is structured, organized, and represented in a database system. The topic is foundation for database design, and it is an important part of the DBMS syllabus.
In this post, we will explain the concepts of data models, data model levels, and understand different types of data models. This topic is frequently asked in university examinations and competitive examinations like GATE, etc.
Before we begin, let’s understand data abstraction.
What is Data Abstraction?
The data abstraction means only exposing the essential data to the users and hiding the implementation details. We don’t show the storage details.
The purpose of data abstraction is:
- Provide security and data protection.
- Data independence
- Reduce complexity
- Easy maintenance
Provide security and data protection
The data abstraction keeps different access for different users. It hides the sensitive data from normal users. Users cannot access the data directly without authentication.
Data Independence
Data abstraction is independent of physical storage. A change in storage structure such as files, indexes, etc., will not affect the application level data. They are independent of each other.
Reduce Complexity
Keeping separate layers of data and hiding their implementation details reduces complexity. Users only see what is necessary for them.
For example, users interact with logical tables, without knowing the storage details.
Easy Maintenance
We already mentioned that data abstraction is data independence. Each layer is separate and does not affect the higher layer. We can repair physical disks, without affecting user’s access to tables.
This makes the maintenance process easy.
What is Data Model ?
The data model is the blueprint that defines the structure of the database. It is the foundation of database design. The structure of the database includes its
- Data types
- Relationships and
- Database constraints.
The data model is designed and organized to solve the data requirements of a specific application or specific domain, not all applications. It only supports a specific problem area.
A key feature of a data model is the data organization, which defines how data and relationships are structured in the database.4
In next section, you will learn more about different levels of data models.
Three Levels of Data Models
It is necessary to separate the data models into three distinct levels of modeling. Each level of data model collects different data and implements them differently.
- Conceptual Data Model
- Logical Data Model
- Physical Data Model

Conceptual Data Model
A conceptual data model is a high-level model that provides
- an overall logical view of the database that is easy for non-technical stakeholders to understand. It consists of real-world concepts and business logic.
- It tells us what kind of data is required, independent of database or storage details. It reveals business requirements such as entities and their relationships.
- The conceptual layer enables communication between the database designer, application developer, and end users. All of them collaborate to build a database system that solves a specific problem.
- The conceptual level serves as a blueprint for both the logical data model and the physical data model.
In relational database systems, conceptual modeling involves creating an Entity–Relationship (E–R) model or an object model. Its main purpose is to answer two questions:
- What data is required?
- How should the data be organized ?
At the conceptual data model level, data is represented as entities and their relationships, where an entity represents a real-world object.
Object modeling uses UML (Unified Modeling Language), use-case diagrams, etc., to model user interaction with the database through a software system.
After conceptual data model is completed, the next step is to design a logical data model.
Logical Data Model
The main purpose of logical data model is to answer one question, “How is the data organized?”.
The logical data model is used to design database relations and their relationships based on the conceptual model, without specifying physical storage details.
The logical (relational) model is the core of database systems (DBMS) because it defines how data is organized, related, and accessed.
The E–R diagram from the conceptual model is translated into a relational model.
Data is organized into tables (relations) that contain columns (attributes), keys, and relationships.
The next step after the logical data model is to implement the database on disks and storage devices
Physical Data Model
The physical data model defines the files, storage structures, and other storage-level details of the database. This level answers the question:
“How is the data stored?”
The physical data model includes:
- File system
- Indexes
- Storage allocation
- Records placements
- Access paths
The storage level details are hidden from the common users of the database system.
- At storage level, faster searches is achieved through indexes,
- Disk performance is enhanced using disk access algorithms.
- Storage security ensures protection of servers from damage, power failures, and theft.
Different types of models correspond to different levels of data modeling. The conceptual level captures concepts in the form of entities and relationships. The logical level defines how data is organized. The physical level selects efficient storage structures.
In the next section, we discuss different types of data models.
Types of Data Models (Logical)
Logical models represent different ways of organizing data and relationships. The main types are:
- Hierarchical model
- Network model
- Relational model
Hierarchical Data Model
The hierarchical data model stores data in a tree-based structure.
- The tree-like structure helps represent natural hierarchies.
- A strict parent–child relationship ensures data integrity.
- The tree-based structure is simple and predictable.
- The data retrieval is faster if you know the path as it is fixed.
- Access begins from the root node, which means nodes closer to the root are accessed more quickly.

Components of a Hierarchical Data Model
1. Tree Structure
The hierarchical data model is based on a parent–child relationship.
- Each parent can contain multiple child nodes.
- Each child node can have only one parent.
2. Nodes
Data is organized into a logical units called nodes.
- Each node represents a specific type of record.
3. Root Node
The top of the tree contains a single node called the root node.
- The root node has no parent.
- It is the starting point for data access and navigation.
4. Leaf Nodes
The lowest-level nodes in the tree are called leaf nodes.
- A leaf node has no children.
* Data organization begins from the root node.
* It follows strict parent–child relationships.
* Each child has only one parent, while each parent can have multiple children.
How records are stored in Hierarchical model?
The records in hierarchical model has many fields, including the following;
- A pointer to parent node, except root node.
- Pointers to many child nodes

Data retrieval in a hierarchical data model requires traversing the nodes from the root node to the specific record.
- You can only traverse records starting from the root node.
- Retrieval is top-down and one-way.
In a hierarchical data model, data retrieval is one-way, typically from parent to child, following a fixed top-down path.
Limitations of Hierarchical Model
The hierarchical data model has several limitations:
- The structure is rigid and suitable only for one-to-one or one-to-many parent-to-child relationships.
- The search path is fixed and always begins from the root node.
- There is no support for many-to-many relationships.
An improved alternative to the hierarchical model is the network model.
In the next section, you will learn about the network model.
Network Data Model
The network data model has a graph-like structure.
- There is no root node, unlike the hierarchical model.
- In this model, a child node can have multiple parents, and a parent can have multiple children.

The diagram shows a network data model for school where:
- One course has one or many students.
- One course has one or many teachers.
- One student has one or more projects to complete.
- One teacher guide students on one or many projects.
Components of Network Data Model
The main components of network data model are:
- Record Type
- Data Item (attribute)
- Set Type
- Owner Records
- Member Records
- Links (Pointers)
Record Type
The record type define the structure of the record. It is similar to concept of relational schema in RBDMS. It defines three things:
- Attribute or field names
- Data types of the fields
- Format of the data such as dates, integer, double, etc.
Examples:
Student (ID, Name, Course);
Course (ID, Name, Details);Each instance of the record type is called record occurance.
Data Item
Data item is an attribute inside a record. Each record is made of many data items.
Example:
Car record have model, color, price data items.Set Type
The set type is the most important component. It define the relationship between two record types. It has:
- Owner record type
- Member record type
Example:
SET Enrollment
Owner : Course
Member: StudentsOne Course can have many students as members. One student can have many such owners. This is the reason, the network data model is a graph, not a tree.

Owner Records
The record type that is an owner of the set. There are two rules for owner records follow:
- Only one owner for a set.
- An owner can have multiple members.
When set is defined there are EXACTLY two record types defined;
- An Owner record type
- A Member record type
An owner record can be member of another set.
A member record type is one, but there are many member record occurrence for a single owner record occurrence.
Benefit over Hierarchical Data Model
The benefit of network model over hierarchical data model is relationships. The network model supports following types of relationships.
- One-to-One (1:1)
- One-to-Many (1:N)
- Many-to-Many (M:N)
The improvement is the many-to-many relationships using sets.
If one set is Courses – to – Students (1: N), then another set from Students-to-Course (1:N) will create a many-to-many relationship. This is better then rigid hierarchical data model.
Limitations of Network Data Model
The network model is definitely an improvement over the hierarchical data model. However, it has its own limitations.
- Complex Structure – Network model stores relationships and records with the help of links and pointers. This add complexity to the structure.
- Complex way to Insertion, Updation, and Deletion of Records – An insertion, update, or deletion of record requires changing many links and pointers. Programmers manually maintain such complex structure. After a deletion, lot of links must be re-adjusted properly.
- No Data Independence – There is not data independence because if data links and pointers change, the application code must also change.
- Data Corruption – Missing link or pointers can corrupt data.
- Less Abstraction – It is very close to how data is stored, not as abstracted as Relational model.
The relational data model or RDBMS is much more reliable and flexible that the network model. You will learn about relational model throughout the DBMS course on our site.
Relational Data Model
The relational data model is the most popular data model at the time of writing.
At the conceptual level, the relational model uses the Entity–Relationship (E–R) model to capture the business model or business logic.
In other words, the E–R model serves as the conceptual-level blueprint from which a relational data model can be created.
The relational model stores data in the form of a table or relation.
Relation – A relation is an abstract, unordered collection of data with no duplicate records.
- Each attribute has a data type that specifies the kind of values it can hold.
- It is a set of tuples (rows).
- Attributes (columns) define the properties of a real-world object or entity.
Table – A table is the physical implementation of a relation.
- The records in a table are ordered in the database using an index.
- It consists of rows and columns.
- Unlike a relation, a table can allow duplicate records.
Entity – A single real world object represented as one row or a tuple is called an entity.
For example,
Student( id, name, age); is relation.
(100, "Raju", 23) is an entity.Entity Set – A set of entities is called entity set and it shares common attributes and represented by relation or table. Entity set is similar entities with different data values for same attributes.
The database items in relational model are records. A set of records with similar attributes are called relations or tables.

The above E-R model shows a conceptual school database with two entity sets – Teacher and Student.
The data is stored as tables with rows and columns in the database.
For example,


Relationships in Relational Model
Compared to hierarchical model and the network model, the relational model is more flexible. Yet, it employs data abstraction at all levels and provide data integrity and security.
The relationships in relational model is supported by cardinality ( number of entities in the relation). It supports following models:
- One-to-One (1:1)
- One-to-Many (1:N)
- Many-to-One (N:1)
- Many-to-Many (N:M)
Advantages of Relational Model
The relational model has many advantages.
- Simplicity – It is simple to use. The storage is in the form of table with rows and columns.
- Data Integrity – Each table has constraints such primary keys, and rules for attributes which maintain high accuracy in storing data.
- Data independence – Each level of this model is independent of high levels.
- Transactions are ACID compliant – Each transaction either complete successfully or fail and do nothing. The follow ACID properties – Atomicity, Consistency, Isolation, and Durability.
- Flexibility – Unlike Hierarchical model, or Network model, we can easily update tables and records.
- SQL – Relational model provides special query language to retrieve information from the database.
In future posts, you will only learn about Relational data model.
Summary
Data model is about how data is structured, organized, and represented in database systems. There are three levels of data model.
- Conceptual
- Logical
- Physical
There are different types of logical models in database system. The three main types are:
- Hierarchical model – Stores data as a tree based structure.
- Network model – stores data as a graph-like structure.
- Relational model – stores data in tables with rows and columns.