You are on page 1of 11

FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

DBMS Architecture
In the previous tutorials, we learned basics of DBMS. In this guide, we will see
the DBMS architecture. Database management systems architecture will help us
understand the components of database system and the relation among them.

The architecture of DBMS depends on the computer system on which it runs. For
example, in a client-server DBMS architecture, the database systems at server
machine can run several requests made by client machine. We will understand
this communication with the help of diagrams.

Types of DBMS Architecture


There are three types of DBMS architecture:

1. Single tier architecture


2. Two tier architecture
3. Three tier architecture

1. Single tier architecture


In this type of architecture, the database is readily available on the client
machine, any request made by client doesn’t require a network connection to
perform the action on the database.

For example, lets say you want to fetch the records of employee from the
database and the database is available on your computer system, so the request
to fetch employee details will be done by your computer and the records will be
fetched from the database by your computer as well. This type of system is
generally referred as local database system.
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

2. Two tier architecture

In two-tier architecture, the Database system is present at the server machine


and the DBMS application is present at the client machine, these two machines
are connected with each other through a reliable network as shown in the above
diagram.

Whenever client machine makes a request to access the database present at


server using a query language like sql, the server perform the request on the
database and returns the result back to the client. The application connection
interface such as JDBC, ODBC are used for the interaction between server and
client.
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

3. Three tier architecture

In three-tier architecture, another layer is present between the client machine and
server machine. In this architecture, the client application doesn’t communicate
directly with the database systems present at the server machine, rather the
client application communicates with server application and the server
application internally communicates with the database system present at the
server.

DBMS – Three Level Architecture


n the previous tutorial we have seen the DBMS architecture – one-tier, two-tier
and three-tier. In this guide, we will discuss the three level DBMS architecture in
detail.
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

DBMS Three Level Architecture Diagram

This architecture has three levels:


1. External level
2. Conceptual level
3. Internal level

1. External level
It is also called view level. The reason this level is called “view” is because
several users can view their desired data from this level which is internally
fetched from database with the help of conceptual and internal level mapping.

The user doesn’t need to know the database schema details such as data
structure, table definition etc. user is only concerned about data which is what
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

returned back to the view level after it has been fetched from database (present
at the internal level).

External level is the “top level” of the Three Level DBMS Architecture.

2. Conceptual level
It is also called logical level. The whole design of the database such as
relationship among data, schema of data etc. are described in this level.

Database constraints and security are also implemented in this level of


architecture. This level is maintained by DBA (database administrator).

3. Internal level
This level is also known as physical level. This level describes how the data is
actually stored in the storage devices. This level is also responsible for allocating
space to the data. This is the lowest level of the architecture.

View of Data in DBMS


bstraction is one of the main features of database systems. Hiding irrelevant
details from user and providing abstract view of data to users, helps in easy and
efficient user-database interaction. In the previous tutorial, we discussed
the three level of DBMS architecture, The top level of that architecture is “view
level”. The view level provides the “view of data” to the users and hides the
irrelevant details such as data relationship, database schema, constraints,
security etc from the user.

To fully understand the view of data, you must have a basic knowledge of data
abstraction and instance & schema. Refer these two tutorials to learn them in
detail.

1. Data abstraction
2. Instance and schema

Data Abstraction in DBMS


FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

Database systems are made-up of complex data structures. To ease the user
interaction with database, the developers hide internal irrelevant details from
users. This process of hiding irrelevant details from user is called data
abstraction.

We have three levels of abstraction:


Physical level: This is the lowest level of data abstraction. It describes how data
is actually stored in database. You can get the complex data structure details at
this level.

Logical level: This is the middle level of 3-level data abstraction architecture. It
describes what data is stored in database.

View level: Highest level of data abstraction. This level describes the user
interaction with database system.
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

Example: Let’s say we are storing customer information in a customer table.


At physical level these records can be described as blocks of storage (bytes,
gigabytes, terabytes etc.) in memory. These details are often hidden from the
programmers.

At the logical level these records can be described as fields and attributes along
with their data types, their relationship among each other can be logically
implemented. The programmers generally work at this level because they are
aware of such things about database systems.

At view level, user just interact with system with the help of GUI and enter the
details at the screen, they are not aware of how the data is stored and what data
is stored; such details are hidden from them.

Instance and schema in DBMS


DBMS Schema
Definition of schema: Design of a database is called the schema. Schema is of
three types: Physical schema, logical schema and view schema.

For example: In the following diagram, we have a schema that shows the
relationship between three tables: Course, Student and Section. The diagram
only shows the design of the database, it doesn’t show the data present in those
tables. Schema is only a structural view(design) of a database as shown in the
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

diagram below.

The design of a database at physical level is called physical schema, how the
data stored in blocks of storage is described at this level.

Design of database at logical level is called logical schema, programmers and


database administrators work at this level, at this level data can be described as
certain types of data records gets stored in data structures, however the internal
details such as implementation of data structure is hidden at this level (available
at physical level).

Design of database at view level is called view schema. This generally


describes end user interaction with database systems.

To learn more about these schemas, refer 3 level data abstraction architecture.
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

DBMS Instance
Definition of instance: The data stored in database at a particular moment of
time is called instance of database. Database schema defines the variable
declarations in tables that belong to a particular database; the value of these
variables at a moment of time is called the instance of that database.

For example, lets say we have a single table student in the database, today the
table has 100 records, so today the instance of the database has 100 records.
Lets say we are going to add another 100 records in this table by tomorrow so
the instance of database tomorrow will have 200 records in table. In short, at a
particular moment the data stored in database is called the instance, that
changes over time when we add or delete data from the database.

DBMS languages
Database languages are used to read, update and store data in a database.
There are several such languages that can be used for this purpose; one of them
is SQL (Structured Query Language).
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

Types of DBMS languages:

Data Definition Language (DDL)


DDL is used for specifying the database schema. It is used for creating tables,
schema, indexes, constraints etc. in database. Lets see the operations that we
can perform on database using DDL:

 To create the database instance – CREATE


 To alter the structure of database – ALTER
 To drop database instances – DROP
 To delete tables in a database instance – TRUNCATE
 To rename database instances – RENAME
 To drop objects from database such as tables – DROP
 To Comment – Comment
FILE PROCESSING AND DATABASE MANAGEMENT SYSTEM - FINALS 2019

All of these commands either defines or update the database schema that’s why
they come under Data Definition language.

Data Manipulation Language (DML)


DML is used for accessing and manipulating data in a database. The following
operations on database comes under DML:

 To read records from table(s) – SELECT


 To insert record(s) into the table(s) – INSERT
 Update the data in table(s) – UPDATE
 Delete all the records from the table – DELETE

Data Control language (DCL)


DCL is used for granting and revoking user access on a database –

 To grant access to user – GRANT


 To revoke access from user – REVOKE

In practical data definition language, data manipulation language and data


control languages are not separate language, rather they are the parts of a
single database language such as SQL.

Transaction Control Language(TCL)


The changes in the database that we made using DML commands are either
performed or rollbacked using TCL.

 To persist the changes made by DML commands in database – COMMIT


 To rollback the changes made to the database – ROLLBACK

You might also like