Data Models in DBMS
1. What is a Data Model?
A data model in a Database Management System (DBMS) is a conceptual tool for
describing data, data relationships, data semantics, and consistency constraints. It defines the
logical structure of a database and fundamental operations on the data, such as retrieval
and update.
It provides a systematic way to:
Design a database at the conceptual, logical, and physical levels
Ensure data consistency, integrity, and independence
Serve as a blueprint for database development
2. Importance of Data Models
Purpose Description
Helps structure data and relationships in an organized, logical
Database Design
manner
Communication Tool Acts as a bridge between developers, analysts, and end-users
Data Integrity &
Enforces business rules, constraints, and data accuracy
Security
Query Optimization Models influence how data is retrieved and optimized
Schema Mapping Maps real-world entities to database entities
3. Components of a Data Model
A complete data model includes the following three essential components:
Component Description
Structure Describes the format for data storage (e.g., tables, graphs, objects)
Operations Defines the operations allowed on data (e.g., insertion, deletion, queries)
Constraints Rules that govern the correctness and validity of the data
4. Classification of Data Models
Data models are broadly categorized based on abstraction level:
Level Description Example
Conceptual High-level view of data from the user perspective ER Model
Level Description Example
Middle-level, describes how data is logically Relational, Network,
Logical
organized Hierarchical
Low-level, describes how data is physically stored
Physical Indexes, File Structures
on hardware
5. Types of Data Models (In-Depth Theory)
A. Hierarchical Data Model
Theory:
Developed by IBM in the 1960s.
Organizes data in a tree-like hierarchy.
Each parent node can have multiple child nodes, but each child has only one
parent.
Uses navigational data access.
Key Features:
Data represented as records and parent-child relationships.
Efficient for one-to-many relationships.
Relationships are hardcoded into access paths.
Theoretical Limitations:
Rigidity: Hard to reorganize structure.
Redundancy: Same data may appear in multiple branches.
Complexity: Difficult to handle many-to-many relationships.
B. Network Data Model
Theory:
Introduced by CODASYL DBTG in the late 1960s.
Organizes data using graphs (i.e., nodes and sets).
Each record (node) can have multiple parent and child relationships.
More flexible than the hierarchical model.
Key Features:
Designed to handle many-to-many relationships.
Data accessed via pointers and navigational paths.
Consists of records and set types (represent relationships).
Theoretical Limitations:
Complex pointer-based navigation.
Tightly coupled data structure and access methods.
Limited ad hoc querying capability.
C. Relational Data Model
Theory:
Proposed by E.F. Codd in 1970.
Based on set theory and first-order predicate logic.
Represents data as a set of relations (tables).
Dominant model in commercial systems (MySQL, PostgreSQL, etc.).
Key Features:
Tables have rows (tuples) and columns (attributes).
Tables can be related using foreign keys.
Uses declarative query language (SQL).
Supports relational algebra and relational calculus.
Integrity Constraints:
Primary Key: Uniquely identifies each tuple.
Foreign Key: Enforces referential integrity between tables.
Domain Constraints: Type restrictions on values in columns.
Theoretical Strengths:
High data independence.
Supports normalization to reduce redundancy.
Easy data manipulation and querying.
D. Entity-Relationship (ER) Model
Theory:
Proposed by Peter Chen in 1976.
Designed for conceptual database design.
Visual representation using ER diagrams.
Independent of the DBMS used in implementation.
Key Concepts:
Entities: Real-world objects (e.g., Student, Course).
Attributes: Characteristics (e.g., StudentID, Name).
Relationships: Associations between entities (e.g., EnrolledIn).
Cardinality: Number of instances (1:1, 1:N, M:N).
Theoretical Role:
Used in requirement analysis.
Converts conceptual designs into relational schemas.
E. Object-Oriented Data Model
Theory:
Combines features of DBMS and Object-Oriented Programming (OOP).
Data stored as objects with attributes and methods.
Supports inheritance, encapsulation, and polymorphism.
Key Features:
Complex data types (e.g., multimedia, geospatial).
Persistent objects across sessions.
Ideal for CAD, AI, multimedia applications.
Theoretical Limitations:
Less standardized.
Higher learning curve for traditional DB users.
F. NoSQL Data Models
Theory:
Emerged due to the limitations of RDBMS for big data, real-time web apps, and
scalability.
Reject rigid schemas in favor of flexible, dynamic models.
Prioritize Availability, Partition tolerance over Consistency (CAP Theorem).
Types:
Model Type Description Example
Key-Value Simple key to value mappings Redis
Document Semi-structured documents (JSON, BSON) MongoDB
Column-Family Column-based structure optimized for large volumes Cassandra
Graph Nodes and edges representing complex relationships Neo4j
Theoretical Focus:
Horizontal scalability
Eventual consistency
Highly optimized for distributed environments
6. Theoretical Comparison of Data Models
ER Object-
Feature Hierarchical Network Relational NoSQL
Model Oriented
Structure Type Tree Graph Table Diagram Object Varies
Relationship
1:N M:N M:N M:N M:N Varies
Support
Query OQL API /
Procedural Procedural Declarative N/A
Language (variant) JSON-based
Flexibility Low Moderate High High High Very High
Low–
Complexity High High Low Medium Medium
Medium
Legacy General Big data,
Best Use Telecom Design Multimedia
systems use Real-time
7. Conclusion
Data models are the foundation of DBMS design.
Each model has strengths depending on the application domain.
Relational Model remains dominant due to simplicity and powerful query capability.
ER Model is best for conceptual design.
Object-Oriented and NoSQL models are advancing with growing demands for
complex and large-scale data handling.