Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • Aptitude
  • Engineering Mathematics
  • Discrete Mathematics
  • Operating System
  • DBMS
  • Computer Networks
  • Digital Logic and Design
  • C Programming
  • Data Structures
  • Algorithms
  • Theory of Computation
  • Compiler Design
  • Computer Org and Architecture
Open In App
Next Article:
Inheritance Hierarchies in DBMS
Next article icon

Hierarchical Model in DBMS

Last Updated : 12 Feb, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Database models are critical frameworks in database management systems, dictating how data is structured, stored, and accessed. Among these, the hierarchical model stands out for its tree-like structure where data is organized in parent-child relationships, resembling a family tree. This model, significant in the early development of database systems, enables efficient data retrieval through predefined pathways. Despite its age, the hierarchical model is still pertinent in modern applications that demand rigid hierarchical structures, such as XML data processing and organizational charts. Its capability to manage complex hierarchies effectively makes it invaluable for specific scenarios where performance and data order are prioritized.

Hierarchical Model

  • The hierarchical model is a type of database model that organizes data into a tree-like structure based on parent-child relationships. Each record, or “node,” holds data and links to subordinate nodes, establishing a one-to-many relationship from the parent node to its children.
  • In a hierarchical database, data is represented visually as a tree. The root node at the top represents the starting point, and branches extend downwards to child nodes, illustrating the relationships and flow of data access. Each child node has only one parent but potentially multiple children, creating a strictly defined structure that enhances the speed and simplicity of data navigation.
  • The hierarchical model was developed in the 1960s, primarily driven by the need for efficient data storage and quick data retrieval systems in large-scale information processing, like the systems used by IBM. It was one of the first database models to be created, offering a solution that was more systematic and flexible than the flat file storage systems previously in use.
  • This model, while somewhat limited by its rigidity and the complexity of implementing changes to the database structure, was crucial in the evolution of data storage methodologies and still influences modern database architectures that require structured hierarchical data management.

Working of Hierarchical Model

The hierarchical model organizes data in a manner that mirrors a tree structure with a single root, facilitating straightforward data storage and retrieval processes.

  • Data Storage: In the hierarchical model, data is stored in records that are linked to form a structure resembling an organizational chart. Each record is a node that has links to its children but only one parent, except for the root node, which has no parent.
  • Data Retrieval: To retrieve data, the process starts at the root node and traverses down through the branches to the desired child nodes. This predefined path makes data retrieval fast, as it eliminates the need for searching across unrelated nodes.

Applications of Hierarchical Model

  • Content Management Systems (CMS): Many CMSs use hierarchical databases to manage and organize content such as pages, articles, and media files in a structured manner. This allows for efficient retrieval and management of content that is nested within categories and subcategories.
  • Organizational Structures: Businesses often utilize hierarchical databases to mirror their organizational charts. This helps in efficiently managing employee records, departmental data, and company resources that follow a clear hierarchical structure.
  • File Systems: Operating systems often employ a hierarchical model to manage files and directories. This structure allows users to navigate through folders and find files easily, following a clear path from a root directory to subdirectories and files.
  • Geographic Information Systems (GIS): Hierarchical databases are used in GIS to manage spatial data that is layered as in the case of maps where different layers (like terrain, roads, landmarks) are organized hierarchically.
  • Network and Telecom Management: Hierarchical databases facilitate the management of extensive network configurations and telecom inventories where elements are structured in a hierarchical fashion, from network segments to individual switches and routers.

Examples

Example 1: Consider the below Student database system hierarchical model.

Hierarchical model

In the above-given figure, we have few students and few course-enroll and a course can be assigned to a single student only, but a student can enroll in any number of courses and with this the relationship becomes one-to-many. We can represent the given hierarchical model like the below relational tables:

FACULTY Table

Name Dep Course-taught
John CSE CA
Jake CSE SE
Royal CSE DBMS

STUDENT Table

Name Course-enroll Grade
Gami CA 2.0
Mary SE 3.0
Mayen SE 4.0

Example 2: Consider the below cricket database system hierarchical model scheme.
 

Hierarchical model

Here, in this example, for each player, there are some set of positions (P_POSITION) he plays, a set of places (P_PLACE), and also a set of birthdates (P_BDATE) of the players. In the above figure, each node represents a logical record type and is displayed by a list of its fields. The child node represents a set of records that are connected to each record of the parent type, which is due to a many-to-many relationship is from child to parent. In the above, figure, the root node PLAYER states that for every player there will be a set of positions, a set of places (only one), and a set of birthdates (which is only one). 

Advantages of the Hierarchical Model

  • Simplicity: The tree-like structure of the hierarchical model is intuitive and easy to understand, which simplifies the design and navigation of databases. This structure clearly defines parent-child relationships, making the path to retrieve data straightforward.
  • Data Integrity: Due to its rigid structure, the hierarchical model inherently maintains data integrity. Each child record has only one parent, which helps prevent redundancy and preserves the consistency of data across the database.
  • Efficient Data Retrieval: The model allows for fast and efficient retrieval of data. Since relationships are predefined, navigating through the database to find a specific record is quicker compared to more complex models where paths are not as clearly defined.
  • Security: Hierarchical databases can provide enhanced security. Access to data can be controlled by restricting users to certain segments of the tree, which makes it easier to implement security policies based on data hierarchy.
  • Performance: For applications where relationships are fixed and transactions require high throughput, such as in banking or airline reservation systems, the hierarchical model offers excellent performance and speed.

Limitations of the Hierarchical Model

  • Structural Rigidity: The biggest limitation of the hierarchical model is its structural rigidity. Once the database is designed, making changes to its structure, such as adding or modifying the relationships between records, can be complex and labor-intensive.
  • Lack of Flexibility: This model does not easily accommodate many-to-many relationships between records, which are common in more complex business applications. This limitation can lead to redundancy and inefficiencies when trying to model more intricate relationships.
  • Data Redundancy: In cases where a child has more than one parent, the hierarchical model can lead to data duplication because each child-parent relationship needs to be stored separately. This redundancy can consume additional storage and complicate data management.
  • Complex Implementation: Implementing a hierarchical database can be more complex than more modern relational databases, particularly when dealing with large sets of data that have diverse and intricate relationships.
  • Query Limitations: The hierarchical model typically requires a specific type of query language that might not be as rich or flexible as SQL, used in relational databases. This can limit the types of queries that can be executed, affecting the ease and depth of data analysis.


Next Article
Inheritance Hierarchies in DBMS
author
tarunsinghwap7
Improve
Article Tags :
  • DBMS

Similar Reads

  • Inheritance Hierarchies in DBMS
    Inheritance Hierarchies are crucial to building a structured and well-organized database. It is comparable to the idea of inheritance found in object-oriented programming languages. The main ideas of inheritance hierarchies in database management systems (DBMS) will be covered in this article, along
    7 min read
  • Data Models in DBMS
    A Data Model in Database Management System (DBMS) is the concept of tools that are developed to summarize the description of the database. Data Models provide us with a transparent picture of data which helps us in creating an actual database. It shows us from the design of the data to its proper im
    8 min read
  • Network Model in DBMS
    The Network Model in a Database Management System (DBMS) is a data model that allows the representation of many-to-many relationships in a more flexible and complex structure compared to the Hierarchical Model. It uses a graph structure consisting of nodes (entities) and edges (relationships) to org
    6 min read
  • Normalization Process in DBMS
    Database Normalization is any systematic process of organizing a database schema such that no data redundancy occurs and there is least or no anomaly while performing any update operation on data. In other words, it means dividing a large table into smaller pieces such that data redundancy should be
    8 min read
  • Impedance Mismatch in DBMS
    Impedance mismatch is a term used in computer science to describe the problem that arises when two systems or components that are supposed to work together have different data models, structures, or interfaces that make communication difficult or inefficient. In the context of databases, impedance m
    4 min read
  • File Organization in DBMS | Set 3
    B+ Tree, as the name suggests, uses a tree-like structure to store records in a File. It uses the concept of Key indexing where the primary key is used to sort the records. For each primary key, an index value is generated and mapped with the record. An index of a record is the address of the record
    4 min read
  • Degree of Relations in DBMS
    We are living in a world where every entity has relationships with one other whether a living or non-living being. For example, you are a single entity but you share different relations with your family and friends. Even within a family, you are the son of your father at the same time you are also a
    4 min read
  • File Organization in DBMS - Set 1
    A database consists of a huge amount of data. The data is grouped within a table in RDBMS, and each table has related records. A user can see that the data is stored in the form of tables, but in actuality, this huge amount of data is stored in physical memory in the form of files. What is a File?A
    6 min read
  • File Organization in DBMS | Set 2
    Pre-Requisite: Hashing Data Structure In a database management system, When we want to retrieve a particular data, It becomes very inefficient to search all the index values and reach the desired data. In this situation, Hashing technique comes into the picture. Hashing is an efficient technique to
    6 min read
  • Serializability in DBMS
    In this article, we are going to explain the serializability concept and how this concept affects the DBMS deeply, we also understand the concept of serializability with some examples, and we will finally conclude this topic with an example of the importance of serializability. The DBMS form is the
    9 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences