DBMS Concepts

DBMS Tutorial Components of DBMS. Applications of DBMS The difference between file system and DBMS. Types of DBMS DBMS Architecture DBMS Schema Three Schema Architecture. DBMS Languages.

DBMS ER Model

ER model: Entity Relationship Diagram (ERD) Components of ER Model. DBMS Generalization, Specialization and Aggregation.

DBMS Relational Model

Codd’s rule of DBMS Relational DBMS concepts Relational Integrity Constraints DBMS keys Convert ER model into Relational model Difference between DBMS and RDBMS Relational Algebra DBMS Joins

DBMS Normalization

Functional Dependency Inference Rules Multivalued Dependency Normalization in DBMS: 1NF, 2NF, 3NF, BCNF and 4NF

DBMS Transaction

What is Transaction? States of transaction ACID Properties in DBMS Concurrent execution and its problems DBMS schedule DBMS Serializability Conflict Serializability View Serializability Deadlock in DBMS Concurrency control Protocols

Difference

Difference between DFD and ERD

Misc

Advantages of DBMS Disadvantages of DBMS Data Models in DBMS Relational Algebra in DBMS Cardinality in DBMS Entity in DBMS Attributes in DBMS Data Independence in DBMS Primary Key in DBMS Foreign Key in DBMS Candidate Key in DBMS Super Key in DBMS Aggregation in DBMS Hashing in DBMS Generalization in DBMS Specialization in DBMS View in DBMS File Organization in DBMS What Is A Cloud Database What Is A Database Levels Of Locking In DBMS What is RDBMS Fragmentation in Distributed DBMS What is Advanced Database Management System Data Abstraction in DBMS Checkpoint In DBMS B Tree in DBMS BCNF in DBMS Advantages of Threaded Binary Tree in DBMS Advantages of Database Management System in DBMS Enforcing Integrity Constraints in DBMS B-Tree Insertion in DBMS B+ Tree in DBMS Advantages of B-Tree in DBMS Types of Data Abstraction in DBMS Levels of Abstraction in DBMS 3- Tier Architecture in DBMS Anomalies in Database Management System Atomicity in Database Management System Characteristics of DBMS DBMS Examples Difference between Relational and Non-Relational Databases Domain Constraints in DBMS Entity and Entity set in DBMS ER Diagram for Banking System in DBMS ER Diagram for Company Database in DBMS ER Diagram for School Management System in DBMS ER Diagram for Student Management System in DBMS ER Diagram for University Database in DBMS ER Diagram of Company Database in DBMS Er Diagram Symbols and Notations in DBMS How to draw ER-Diagram in DBMS Integrity Constraints in DBMS Red-Black Tree Deletion in DBMS Red-Black Tree Properties in DBMS Red-Black Tree Visualization in DBMS Redundancy in Database Management System Secondary Key in DBMS Structure of DBMS 2-Tier Architecture in DBMS Advantages and Disadvantages of Binary Search Tree Closure of Functional Dependency in DBMS Consistency in Database Management System Durability in Database Management System ER Diagram for Bank Management System in DBMS ER Diagram for College Management System in DBMS ER Diagram for Hotel Management System in DBMS ER Diagram for Online Shopping ER Diagram for Railway Reservation System ER Diagram for Student Management System in DBMS Isolation in DBMS Lossless Join and Dependency Preserving Decomposition in DBMS Non-Key Attributes in DBMS Data Security Requirements in DBMS DBMS functions and Components What is Homogeneous Database? DBMS Functions and Components Advantages and Disadvantages of Distributed Database Relational Database Schema in DBMS Relational Schema Transaction Processing in DBMS Discriminator in DBMS

Data Models in DBMS

Data Models in DBMS

Data models are the models explaining the logical structure of the database systems. They describe the entities, attributes, and the relationship among the data elements of the specified database.

Data models organize the description and consistency constraints of the data. After the complete implementation of the database, these models show how the data is represented to each other and how they are stored, accessed, and updated inside the database systems.

Various types of data models in the database management system (DBMS) are as follows:

  • Flat Data Model
  • Hierarchical Model
  • Relational Model
  • Entity-Relationship Model
  • Object-Oriented Data Model
  • Object-Relational Data Model
  • Network Model 

Flat Data Model

The flat Data Model is a model which kept all the data in the same plane. It is a first and foremost introduced traditional data model, which is not much scientific.

In this model, the database is indicated as a single table in the form of tuples (rows) and fields (columns). This DBMS data model is slow and inefficient process.

Hierarchical Data Model 

The hierarchical model is that data model which indicates the data of the database in the tree-like structure. This is the first database management system model.

This data model stores the data as records and connects them through links. Each hierarchical data model has a single parent entity for each record. A parent can have more than one child node, and all the siblings are sorted in a specific order.

In the 60s and 70s, this data model was mainly used by the Information Management System (IMS) of IBM.

In this hierarchical tree structure, only one entity is present at the top, which is called a root entity. If any database user wants to read the data from the hierarchical database, then that user has to traverse the tree from the root node to the data node.

Advantages of Hierarchical Data Model

Following are the few benefits or advantages of the Hierarchical data model:

  • This database model has a parent-child relationship, so it is simple to use and understand.
  • This data model easily manages a huge amount of data and describes the connection between the information.
  • The referential Integrity of this model is always automatically maintained.
  • The data and the information presenting at the top of the tree is very fast to access.
  • Users can easily add and delete new information in this model.

Disadvantages of Hierarchical Data Model

Few disadvantages of the Hierarchical data model in the database are as follows:

  • As the users require the physical identification of the database, so it is complex.
  • This model does not support complex (multi-parent) relationships.
  • The flexibility of the hierarchical data model is poor.
  • There is a lack of data independence.
  • One of the biggest disadvantages of this model is that if any user deleted the record of the parent node, then the child node is automatically removed or deleted.
  • When the user wants to access the data from the lower entities at that time speed of the database is very slow.

Network Data Model

The network data model is that model which denotes the data of the database as the graph. It is a simple model for indicating the objects and their relationships.

This data model was originally introduced by Charles Bachman.

Before the invention of the relational model, this was the most popular database model.

Sometimes, this model is also known as the CODASYL model because it was adopted in 1969 by the CODASYL Data Base Task Group. In this data model, data and information are more connected to each other. Due to the high-bonding, any user can access data easily and fastly.

This model is mainly used to denote the many-to-many relationship between the given data.

Advantages of Network Data Model

Following are the few benefits or advantages of the network data model in the DBMS:

  • Users can easily design and understand this data model.
  • As compared to the hierarchical model, users can access the data at fast speed.
  • Users can easily search the information due to its flexibility. 
  • The biggest advantage of this data model is that it can easily handle one to many, many to one and many-to-many relationships.

Disadvantages of Network Data Model

Some limitations or disadvantages of the network data model are as follows:

  • One of the main disadvantages of this model is its complexity. It is so complex because the pointers maintain each record. And, the pointers make the database more complex. 
  • Insertion, updation, and deletion operations are complex because of the large number of pointers. 
  • It is very difficult in the network data model to make the structural changes to the database.

Relational Data Model

The relational data model is a data model indicating the structure of the database in the 2-D (2-dimensional) tables. In this model, all the data or information given by the user is stored in the table rows according to the specific column.

Edgar Frank Codd (E.F. Codd) was a great scientist who invented the relational model for the databases in 1970.

In the relational model, tables are called relations, and rows and columns are called tuples and attributes.

The following example consists of a relation (table) whose name is Employee. This Employee table contains five attributes (columns) and six tuples (rows).

Five attributes of this table are Employee_ID, Employee_Name, employee_Age, Employee_Salary, and Dept_ID.

Employee_IDEmployee_ NameEmployee_AgeEmployee_ SalaryDept_ID
101Anuj2028,000Account
102Manjeet1928,000Coding
103Johny1923,000Testing
104Vaibhav2130,000Account
105Amit2033,000Coding
106Hemant2129,000Marketting

Advantages of the Relational Data Model

The  advantages of the relational data model are as follows:

  • As compared to the hierarchical and network data model, the relational data model is simpler for the users to use and understand.
  • The relational data model easily supports the topic of data integrity.
  • Any database user can easily implement and design the relational data model in the database and stores the data at a fast speed.
  • The main benefit of this model is that it abstracts the details of physical storage from the database users and developers.

Disadvantages of the Relational Data Model

Some disadvantages or limitations of the relational data model are as follows:

  • The cost of the relational data model is so high. Huge money is required for maintaining the relational data model. So, it is one of its big disadvantages.
  • Relational data models can't store a huge amount of data in their databases.
  • Trained, skilled, and experienced database administrators are required for maintaining the databases.  

Entity-Relationship Data Model

Entity-Relationship Model is that model which helps in designing the structure of the database conceptually or logically. It is a high-level data model, which is developed by Peter Chen in the year of 1976. Any developer can easily understand the database system by the ER diagram. ER diagram is a tool which consists of various symbols for representing the ER model.

It is a best data model for designing a database. After designing the database, we can easily convert the designed ER diagram into the tables of the relational model.

ER model of DBMS consists of the following three components:

1. Entity

2. Attribute

3. Relationship

In the following example, the Employee and Department are the two entities. The attributes of the Employee entity are Emp_ID, Emp_Name, Emp_Salary, and Emp_Age. And, the attributes of the Department entity are Dept_ID and Dept_name. These two entities are connected by a relationship, whose name is Works_In.

Entity-Relationship Data Model

Advantages of Entity-Relationship Data Model

Some benefits or advantages of the Entity-Relationship data model are as follows:

  • If any user knows the relationship between the entities, then he/she can easily and fastly develop and maintain the ER model. So, this model is very easy to set up and develop.
  • This data model can be easily converted by the developers into other data models without any problem.
  • This tool is so effective for communication between the designers.

Disadvantages of Entity-Relationship Data Model

Some benefits or disadvantages of the Entity-Relationship data model are as follows:

  • As compared to other data models, it denotes fewer relationships.
  • In this data model, there are more chances that some details of data might be lost or hidden.

Object-Oriented Data Model

The object-Oriented data model is that model representing the data and relationship as the object. This model stores the videos, audios, and graphical files which can't be stored in the relationship model.  

This model is based on the three main components whose names are object class, object identity, and object structure. This data model is mainly designed for storing and retrieving the objects which are created by the programs of object-oriented languages. It also provides the facilities of object-oriented to the database users.

Advantages of Object-Oriented Data Model

Some benefits or advantages of the object-oriented data model are as follows:

  • This data model saves and stores the complex data sets fastly and easily.
  • This data model is best for object-oriented programming languages.
  • It is applicable for advanced database applications like CAD, CASE, OIS, etc.
  • This data model uses different protocols for handling and managing the long-duration transactions.
  • As compared to the network, hierarchical, and relational data model, this model can store different types of data.

Disadvantages of Object-Oriented Data Model

Some limitations or disadvantages of the object-oriented data model are as follows:

  • As the complexity of this model is increased due to the increased functionality provided by it.
  • The main disadvantage of this model is that it does not provide security mechanisms for the stored data and information.
  • Due to the high complexity, the performance of this data model is not good in some conditions.

Object-Relational Data Model

The object-Relational data model is that model which combines the relational model with the advanced functions of the object-oriented data model.

The main objective of this model is to connect the gap between the techniques of the object-oriented data model and relational model, which are used in C++ and Java programming languages. This model supports the table structure as well as the concepts (objects, classes, and inheritance) of the object-oriented model. Due to the high complexity, we have a need to understand this model properly. 

This data model helps database developers by increasing the abstraction of the data.

Advantages of Object-Relational Data Model

Some benefits or advantages of the object-relational data model are as follows:

  • The first and main advantage of this data model is that it increases the productivity for the database developer as well as end-users.
  • This model allows its database users to inherit the objects and tables for extending the functionality.
  • Unlike the relational data model, this model allows the users to use the inheritance.

Disadvantages of Object-Relational Data Model

Some limitations or disadvantages of the object-relational data model are as follows:

  • The main limitation of this data model is that it is hard to handle and manage.
  • As compared to other traditional data models, the complexity of the object-oriented relational model is so high.