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

DBMS Architecture

This is the first step when creating a database management system. The architecture of a database management system plays an important role in determining the actual design and layout of the database. The architecture of the DBMS determines the functionality of the database. In contrast, its architecture is dependent on the number of users and the method of connection of those users and the database.

To understand the DBMS architecture, you must have a clear idea about the client and server. The client is the user requesting service, in this case, access to the data stored in the database. The server side is the side that answers the request of the client.

The architecture can be divided into the following three categories based on the layers between the server and client layer.

  • 1 tier Architecture
  • 2 tier Architecture
  • 3 tier Architecture
DBMS Architecture

We can determine the DBMS architecture based on the number of clients and its usage.

Let us discuss all these architectures individually to better understand the working of each architecture.

1 Tier Architecture

In this architecture, the user directly interacts with the database itself, which means that it is accessible to the user to create, alter or delete the data.

The user directly sits on the database, and there is no layer between the user and the database. Therefore, there is no data abstraction; the whole data is available.

There is no interactive user interface.

This architecture is only preferred when the user aims to prepare a local application as there is no real security is in this architecture.

This method provides a quick response to the user.

2 Tier Architecture

This architecture is rather the simplest version of a server-client application.

It provides an application layer that works as an isolating layer between the client and the database server. But this application layer is only available on the user side.

This application layer is only available at the client end. This application layer provides a certain level of data abstraction.

The user interfaces and application program provide different views to the different users run on the user-side. In contrast, the server-side provides various functionalities such as translating and performing queries.

The user can only communicate using the application layer at the client-side, and the server end application interacts with the database.

DBMS Architecture

3 Tier Architecture

This architecture is similar to 2 Tier architecture as it also provides an intermediate layer between the client and the database server. The only difference is that it adds one more application layer as an intermediate, and now the application layer is available at both the client and the server sides.

In this architecture, the user connects through the user application, and that user application interacts with the application server that communicates with the databases.

This provides ample layer to abstract the data.

Any modification in the data done by the user does not directly affect the database itself. The changes are first performed on the application layer. There is no real connection between the database and the user.

The query processing and other functionalities of the database management system are performed at the server-side application.

It allows the DBA to manage the access of the various users. It also enables concurrent transactions on the database.

3 Schema Architecture

It describes the architecture of the database at various levels.

There are three layers of schema that separates the physical, logical and application part of the database. Physical Schema, Logical Schema and the External Schema are mapped together.

There are two levels of mapping between various levels.

At the external-conceptual level and the conceptual-internal level, the request and response are transformed to communicate between these two layers.

They interact with each other to perform the operations on the database. A schema represents all the database entities and the relationship between those entities.

Internal Level

It defines the physical structure of the database. It defines the format in which the data will be stored or, say, the structure in which the data will be stored. It is also known as the Physical Schema. It describes the complex low-level data structures of the database. At this level of schema, the database administrator determines the definition of the database by using data definition language. The user does not have access to this level, requiring special rights. Initially, only the data administrator can alter any change into it.

Conceptual Level

At this level, we describe the design of the database. It describes what data will be stored in the database. This is called the logical schema; the end-user does not have access to this layer. The programmers and database administrators are the only ones with access to this level. At this level, we store the data in the data structures described at the physical level. However, the details of the implementation of the physical level are kept hidden at this level.

External Level

It describes the various views of the database. This level is also called the view level. There can be different views for different users depending on the needs of the end-users.

At this level, the end-user interacts with the database, and the details of both physical and logical schemas are kept hidden from the user.

The hiding of details of one level from other and only showing the necessary information is called abstraction.

DBMS Architecture