DBMS Architecture
o 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.
o The client/server architecture consists of many PCs and a
workstation which are connected via the network.
o DBMS architecture depends upon how users are connected to the
database to get their request done.
Types of DBMS Architecture
Database architecture can divided into 3 type.
1-Tier Architecture
o In this architecture, the database is directly available to the user. It means
the user can directly sit on the DBMS and uses it.
o Any changes done here will directly be done on the database itself. It
doesn't provide a handy tool for end users.
o 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
o 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.
o The user interfaces and application programs are run on the client-side.
o The server side is responsible to provide the functionalities like: query
processing and transaction management.
o To communicate with the DBMS, client-side application establishes a
connection with the server side.
Fig: 2-tier Architecture
3-Tier Architecture
o The 3-Tier architecture contains another layer between the client and
server. In this architecture, client can't directly communicate with the
server.
o The application on the client-end interacts with an application server
which further communicates with the database system.
o 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.
o The 3-Tier architecture is used in case of large web application.
Data Models
Data Model is the modeling of the data description, data semantics, and
consistency constraints of the data. It provides the conceptual tools for
describing the design of a database at each level of data Therefore, there are
following four data models used for understanding the structure of the database:
1) Relational Data Model: This type of model designs the data in the form
of rows and columns within a table. Thus, a relational model uses tables
for representing data and in-between relationships. Tables are also called
relations. This model was initially described by Edgar F. Codd, in 1969.
The relational data model is the widely used model which is primarily used
by commercial data processing applications.
2) Entity-Relationship Data Model: An
ER model is the logical
representation of data as objects and relationships among them. These
objects are known as entities, and relationship is an association among
these entities. This model was designed by Peter Chen and published in
1976 papers. It was widely used in database designing. A set of attributes
describe the entities. For example, student_name, student_id describes
the 'student' entity. A set of the same type of entities is known as an
'Entity set', and the set of the same type of relationships is known as
'relationship set'.
3) Object-based Data Model: An extension of the ER model with notions
of functions, encapsulation, and object identity, as well. This model
supports a rich type system that includes structured and collection types.
Thus, in 1980s, various database systems following the object-oriented
approach were developed. Here, the objects are nothing but the data
carrying its properties.
4) Semistructured Data Model: This type of data model is different from
the other three data models (explained above). The semistructured data
model allows the data specifications at places where the individual data
items of the same type may have different attributes sets. The Extensible
Markup Language, also known as XML, is widely used for representing the
semistructured data. Although XML was initially designed for including the
markup information to the text document, it gains importance because of
its application in the exchange of data.
Data Independence
o Data independence can be explained using the three-schema architecture.
o Data independence refers characteristic of being able to modify the
schema at one level of the database system without altering the schema
at the next higher level.
There are two types of data independence:
1. Logical Data Independence
o Logical data independence refers characteristic of being able to
change the conceptual schema without having to change the
external schema.
o Logical data independence is used to separate the external level
from the conceptual view.
o If we do any changes in the conceptual view of the data, then the
user view of the data would not be affected.
o Logical data independence occurs at the user interface level.
2. Physical Data Independence
o Physical data independence can be defined as the
capacity to change the internal schema without having to
change the conceptual schema.
o If we do any changes in the storage size of the database
system server, then the Conceptual structure of the
database will not be affected.
o Physical data independence is used to separate
conceptual levels from the internal levels.
o Physical data independence occurs at the logical interface
level.