You are on page 1of 29

Unit No.

1 Introduction DBMS- Concepts & Architectures


Unit 1.Introduction DBMS – Concepts & Architectures

1.1 Database and Need for DBMS, Characteristics of DBMS


1.2 Database 3-tier schema (ANSI/SPARC) and system architecture of DBMS
1.3 Views of data- Schemas and instances, Data Independence
1.4 Centralized, Client-Server system, Transaction servers, Data servers, Cloud based servers
1.1 Introduction to DBMS

Database management system is software that is used to manage the database. A Database Management System
(DBMS) is a software system that is designed to manage and organize data in a structured manner. It allows users
to create, modify, and query a database, as well as manage the security and access controls for that database.
Database management system is a software which is used to manage the database. For example: MySQL, Oracle, etc are
a very popular commercial database which is used in different applications. It provides protection and security to the
database. In the case of multiple users, it also maintains data consistency.
DBMS allows users the following tasks:
•Data Definition: It is used for creation, modification, and removal of definition that defines the organization of data in
the database.

•Data Updation: It is used for the insertion, modification, and deletion of the actual data in the database.

•Data Retrieval: It is used to retrieve the data from the database which can be used by applications for various purposes.
1.1 Database and Need for DBMS, Characteristics of DBMS
What is Database
The database is a collection of inter-related data which is used to retrieve, insert and delete the data efficiently. It is also
used to organize the data in the form of a table, schema, views, and reports, etc.
For example: The college Database organizes the data about the admin, staff, students and faculty etc.
Using the database, you can easily retrieve, insert, and delete the information.

Need for DBMS


A Data Base Management System is a system software for easy, efficient and reliable data processing and management.
It can be used for:
•Creation of a database.
•Retrieval of information from the database.
•Updating the database.
•Managing a database.
Characteristics of DBMS

There are so many characteristics of a database management system, which are as follows −
•A database management system is able to store any kind of data in a database.
•The database management system has to support ACID (atomicity, consistency, isolation, durability) properties.
•The Database management system allows so many users to access databases at the same time.
•Backup and recovery are the two main methods which allow users to protect the data from damage or loss.
•It also provides multiple views for different users in a single organization.
•It follows the concept of normalization which is helpful to minimize the redundancy of a relation.
•It also provides users query language, helpful to insert, retrieve, update, and delete the data in a database.
1.2 Database 3-tier schema (ANSI/SPARC) and system architecture of DBMS

Database 3-tier schema (ANSI/SPARC) :-

•The three schema architecture is also called ANSI/SPARC architecture or three-level architecture.
•This framework is used to describe the structure of a specific database system.
•The three schema architecture is also used to separate the user applications and physical database.
•The three schema architecture contains three-levels. It breaks the database down into three different categories.
In the above diagram:
•It shows the DBMS architecture.
•Mapping is used to transform the request and response between various database levels of architecture.
•Mapping is not good for small DBMS because it takes more time.
•In External / Conceptual mapping, it is necessary to transform the request from external level to conceptual schema.
•In Conceptual / Internal mapping, DBMS transform the request from the conceptual to internal level.
1. Internal Level

•The internal level has an internal schema which describes the physical storage structure of the database.
•The internal schema is also known as a physical schema.
•It uses the physical data model. It is used to define that how the data will be stored in a block.
•The physical level is used to describe complex low-level data structures in detail.

The internal level is generally is concerned with the following activities:


1.Storage space allocations.
For Example: B-Trees, Hashing etc.

2. Data compression and encryption techniques.


2. Conceptual Level

•The conceptual schema describes the design of a database at the conceptual level. Conceptual level is also known as
logical level.
•The conceptual schema describes the structure of the whole database.
•The conceptual level describes what data are to be stored in the database and also describes what relationship exists
among those data.
•In the conceptual level, internal details such as an implementation of the data structure are hidden.
•Programmers and database administrators work at this level.
3. External Level

•At the external level, a database contains several schemas that sometimes called as subschema. The subschema is used
to describe the different view of the database.
•An external schema is also known as view schema.
•Each view schema describes the database part that a particular user group is interested and hides the remaining
database from that user group.
•The view schema describes the end user interaction with database systems.
DBMS Architecture
• The DBMS design depends upon its architecture. The basic client/server architecture is used to deal with a large number
of PCs, web servers, database servers and other components that are connected with networks.
• The client/server architecture consists of many PCs and a workstation which are connected via the network.
• DBMS architecture depends upon how users are connected to the database to get their request done.

Types of DBMS Architecture


1-Tier Architecture
•In this architecture, the database is directly available to the user. It means the user can directly sit on the DBMS and
uses it.
•Any changes done here will directly be done on the database itself. It doesn't provide a handy tool for end users.
•The 1-Tier architecture is used for development of the local application, where programmers can directly
communicate with the database for the quick response.
2-Tier Architecture
•The 2-Tier architecture is same as basic client-server. In the two-tier architecture, applications on the client end can
directly communicate with the database at the server side. For this interaction, API's like: ODBC, JDBC are used.
•The user interfaces and application programs are run on the client-side.
•The server side is responsible to provide the functionalities like: query processing and transaction management.
•To communicate with the DBMS, client-side application establishes a connection with the server side.

Fig: 2-tier Architecture


3-Tier Architecture
•The 3-Tier architecture contains another layer between the client and server. In this architecture, client can't directly
communicate with the server.
•The application on the client-end interacts with an application server which further communicates with the database
system.
•End user has no idea about the existence of the database beyond the application server. The database also has no idea
about any other user beyond the application.
•The 3-Tier architecture is used in case of large web application.

Fig: 3-tier Architecture


1.3 Views of data- Schemas and instances, Data Independence
View of data in DBMS
Abstraction 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.
Schemas:-
It is the definition of the database or it is defined as the description of the database. The overall design of the database is
called database schema. Schema will not be changed frequently. It is the logical structure of a database. It does not show
the data in the database.
The schema is pictorially represented as follows −
Types of Schema:-
The different types of schemas are as follows −
•Physical schema − It is a database design at the physical level.It is hidden below the logical schema and can be changed
easily without affecting the application programs.
•Logical schema − It is a database design at the logical level. Programmers construct applications using logical schema.
•External − It is schema at view level. It is the highest level of a schema which defines the views for end users.
Generally the Database Management System (DBMS) assists one physical schema, one logical schema and several sub or
external schemas.
Database schema refers to the format and layout of the database in which the data will be stored. It is the one thing that
Name Email Phone no
remains the same throughout unless otherwise modified. It defines the structure of what type of data and how it will be
stored.

Example
A database schema for a person will have fields for name, email, phone and address as shown below −

Person
Name Email Phone no
Instance :-
Instance or extension or database state is a collection of information that stored in a database at a particular moment is
called an instance of the database. The Database instance refers to the information stored in the database at a given point
of time. Thus, it is a dynamic value which keeps on changing.

Example
A database instance for the Person database can be (User1,emai.com,11345679,addr) So the person construct will contain
their individual entities in the attributes called as instance. This is shown below −

Person
Name Email Phone no
BOB kksd@yasd.com 2343435
JANU werwr@sdas.in 5345464
PRIYA wefrwer@sdf.com 2342342
1.4 Centralized Architecture, Client-Server System, Transaction Servers, Data servers,
Cloud based Servers
1. Centralized Architecture
A centralized architecture for DBMS is one in which all data is stored on a single server, and all clients connect to that
server in order to access and manipulate the data. This type of architecture is also known as a monolithic architecture. One
of the main advantages of a centralized architecture is its simplicity - there is only one server to manage, and all clients use
the same data.
However, there are also some drawbacks to this type of architecture. One of the main downsides is that, because all data is
stored on a single server, that server can become a bottleneck as the number of clients and/or the amount of data
increases. Additionally, if the server goes down for any reason, all clients lose access to the data.
An example of a DBMS that uses a centralized architecture is SQLite, an open-source, self-contained, high-reliability,
embedded, full-featured, public-domain SQL database engine. SQLite's architecture is based on the client-server model,
but the entire database is contained within a single file, making it a perfect fit for small to medium-sized applications.
2. Client-Server Architecture
A client-server architecture for DBMS is one in which data is stored on a central server, but clients connect to that server in
order to access and manipulate the data. This type of architecture is more complex than a centralized architecture, but it
offers several advantages over the latter.
One of the main benefits of a client-server architecture is that it is more scalable than a centralized architecture. As the
number of clients and/or the amount of data increases, the server can be upgraded or additional servers can be added to
handle the load. This allows the system to continue functioning smoothly even as it grows in size.
Another advantage of a client-server architecture is that it is more fault-tolerant than a centralized architecture. If a single
server goes down, other servers can take over its responsibilities, and clients can still access the data. This makes the
system less likely to experience downtime, which is a crucial factor in many business environments.
An example of a DBMS that uses a client-server architecture is MySQL, an open-source relational database management
system. MySQL uses a multi-threaded architecture, where multiple clients can connect to the server and make requests
simultaneously. The server processes these requests and returns the results to the appropriate client.
3. Transaction Servers
A transaction server is a specialized type of server that manages the operations of software based transactions or
transaction processing. It manages application and database transactions on a network or Internet, within a distributed
computing environment.
Some of the examples of commercially available transaction servers are:
•Microsoft transaction server ( MTS )
•IBM transaction server
Transaction servers incorporate programming that handles high volumes of message exchanges. This kind of programming
is planned explicitly to deal with enormous volumes of information passage and message traffic in an organization.
How Transaction Server Works:
Suppose, there is a client who wants to access a file from the server, so first of all client makes a connection to the server
using TCP protocol, and the translation of the name address into the IP address is done by DNS.
Then they make a request to the server for the particular information or file. This request contains the command, page
desired, and the protocol or version.
After this, the server reads the request and sends the requested file to the client and it is called response. The response
contains the status line, header files, and the message body containing the information from the database, and this whole
process is called request-response behavior. It might also happen that server denies some information.
Finally, when the client receives the information, the transaction is terminated.
4. Database Servers
Database servers are used to store and manage databases that are stored on the server and to provide data access for
authorized users. This type of server keeps the data in a central location that can be regularly backed up. It also allows
users and applications to centrally access the data across the network. A large number of the databases used in your
organization can be kept on one server or a group of servers that are specifically configured to protect data and service
client requests.

5. Cloud Based Server/ Cloud Server


A cloud server is a pooled, centralized server resource that is hosted and delivered over a network—typically the
Internet—and accessed on demand by multiple users. Cloud servers can perform all the same functions of a traditional
physical server, delivering processing power, storage and applications.
Cloud servers can be located anywhere in the world and deliver services remotely through a cloud computing
environment. In contrast, traditional dedicated server hardware is typically set up on premises for exclusive use by one
organization.

You might also like