DBMS Architecture
By:-
Dr. Vani Kapoor Nijhawan
Assistant Professor, VIPS
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.
Dr. Vani Kapoor Nijhawan
Dr. Vani Kapoor Nijhawan
Database architecture can be seen as a single tier or multi-tier. But logically,
database architecture is of two types like: 2-tier architecture and 3-tier
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.
Dr. Vani Kapoor Nijhawan
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.
Dr. Vani Kapoor Nijhawan
Two Tier Client-Server Architecture
► Client and server must install appropriate client module and server module
software for ODBC or JDBC
► A client program may connect to several DBMSs, sometimes called the data
sources.
► In general, data sources can be files or other non-DBMS software that
manages data
Dr. Vani Kapoor Nijhawan
Dr. Vani Kapoor Nijhawan
Logical two-tier client server architecture
Dr. Vani Kapoor Nijhawan
► 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.
Dr. Vani Kapoor Nijhawan
Dr. Vani Kapoor Nijhawan
A Physical Centralized Architecture
Dr. Vani Kapoor Nijhawan
DBMS Client
► Provide appropriate interfaces through a client software module to access and
utilize the various server resources.
► Clients may be diskless machines or PCs or Workstations with disks with only
the client software installed.
► Connected to the servers via some form of a network. » (LAN: local area
network, wireless network, etc.)
Dr. Vani Kapoor Nijhawan
DBMS Server
► Provides database query and transaction services to the clients Relational
DBMS servers are often called SQL servers, query servers, or transaction
servers
► Applications running on clients utilize an Application Program Interface (API)
to access server databases via standard interface such as:
» ODBC: Open Database Connectivity standard
» JDBC: for Java programming access
Dr. Vani Kapoor Nijhawan
Three Tier Client-Server Architecture
► Common for Web applications Intermediate Layer called Application Server
or Web Server: » Stores the web connectivity software and the business logic
part of the application used to access the corresponding data from the
database server » Acts like a conduit for sending partially processed data
between the database server and the client. Three-tier Architecture Can
Enhance Security: » Database server only accessible via middle tier » Clients
cannot directly access database server » Clients contain user interfaces and
Web browsers » The client is typically a PC or a mobile device connected to
the Web
Dr. Vani Kapoor Nijhawan
Three-tier client-server architecture
Dr. Vani Kapoor Nijhawan
Classification of DBMSs
► Based on the data model used
► Traditional: Relational, Network, Hierarchical.
► Emerging: Object-oriented, Object-relational.
► Other classifications
► Single-user (typically used with personal computers)
vs. multi-user (most DBMSs).
► Centralized (uses a single computer with one database)
► Distributed database: data distributed across several different sites
► Operational database: supports a company’s day-to-day operations
► Transactional or production database
► Data warehouse: stores data used for tactical or strategic decisions
Dr. Vani Kapoor Nijhawan
Introduction to Distributed Data
Processing
Distributed Computing System
► A distributed computing system is a configuration in which several heterogeneous
computer systems (PCs/Workstations/Hand held systems etc) also called nodes/sites
are interconnected by a communication network (LAN/MAN/WAN) that cooperate in
performing certain assigned tasks.
► The purpose of the distributed computer system is to provide the users an efficient
and convenient environment for sharing various resources which increases the
computation speed, functionality, data availability and reliability.
Dr. Vani Kapoor Nijhawan
Advantages of Distributed Data Processing
Some advantages of distributed computer systems are:
1. Resource Sharing: Resource sharing in a distributed system provides mechanisms for sharing
files, data, information etc. at remote sites. They can also share software as well as hardware
resources. For example, a user at one site may be using a laser printer located at other site.
2. Computation Speedup: A distributed system allows us to distribute the computations among
the various sites. The sub-computations can be run concurrently and thus provide computation
speedup.
3. Reliability: A reliable system prevents loss of information even in the event of component
failure. If one site fails in a distributed system, the remaining sites can continue operating, giving
the system better reliability.
4. Communication: When several sites are connected to one another by a communication
network, the users at different sites have the opportunity to exchange information by the
mechanism called message passing.
Dr. Vani Kapoor Nijhawan
Distributed Database Concepts
► We can define a distributed database (DDB) as a collection of multiple logically
interrelated databases distributed over a computer network, and a distributed database
management system (DDBMS) as a software system that manages a distributed
database while making the distribution transparent to the user.
► Examples of the Distributed database are Apache Cassandra, HBase, Ignite, etc.
Dr. Vani Kapoor Nijhawan