Sign in
Log inSign up

DBMS Client-Server Database Architecture

Radhika mohan's photo
Radhika mohan
·Feb 7, 2022·

5 min read

DBMS Architecture_Inner Image-06.png Client-Server Database Architecture is a type of DBMS structure in which many clients are connected to a common server. It is a model in which a server (which provides service) sends and manages the resources and works according to the needs of the client. Here, the server hosts, delivers, and manages most of the resources and services consumed by the client. Different clients request different services, and the server will respond according to their needs.

As all the requests are sent using a network, it is also called the networking computing model. The DBMS architecture helps us in the development, design, implementation, and maintenance of a database.

The Purpose of Database Architecture

Here we'll understand the database architecture, or the purpose of database architecture, before jumping to the client-server architecture in the database, because it's always good to have knowledge about the purpose of something before studying about it. So mainly, the main purpose of any database architecture is to store the data in the most appropriate or proper way. So why do we need it to be properly stored? Simply, if our data is stored in the proper way, we can easily fetch our data, easily access that data from it, and the maintenance of that data becomes very flexible, and it saves us time. Database management is something that will help us to manage different databases and make sure that the data is available at any time, deal with the security of data, etc. Due to this, the performance of fetching the data has increased. So every database design is totally based on its architecture, which is why database architecture is important. The architecture of a DBMS may be single-tier or multitier. So I hope now you all have a basic understanding of database architecture. Trust me, it will help you understand client-server architecture. Just be with me and, in the end, everything will be clear to all of you. Let's understand more deeply the client-server architecture.

Let's understand more about clients and servers.

CLIENT

It manages the user interface. Check and accept the syntax of user input. processes application logic. It generates database requests and transmits them to the server.

Server

It accepts and processes database requests from clients. It checks authorization. It performs query and update processing and transmits responses to the client. It provides recovery control.

What is the purpose of Client-Server Architecture used in Database Management Systems?

To decrease network traffic, we prefer to use a client-server architecture in DBMS. It provides us with multi-user updates with the help of a GUI (graphical user interface) to a shared database. With the help of SQL or some other language, we can easily communicate with servers.

In DBMS, the Client-Server Database Architecture is used.

A client-server database architecture defines how the server provides its services to the client. Clients and servers can reside on the same computer or on different computers that are networked together. Clients can be our PCs, laptops, smartphones, etc., whereas a server is anything that provides us with services. Generally, the client process requires some resources, which are provided by the server to the client. When a client wants to interact with the server, it will send some requests, and it depends on the server whether it can accept or reject these requests. For example, if we want to run any webpage like scaler.com, we have to send a request to the server in the backend, and the server will accept our request, and then we can see the content available on scalar.com.

The Structure of Client-Server Database Architecture in DBMS

The structure is divided into 3 parts that are Presentation Tier Logic Tier Data Tier

Presentation Tier

This layer is the uppermost layer of the application. This component is responsible for formatting and presenting data on the user screen, or we can say GUI, i.e., Graphical User Interface. Buttons, icons, etc., are basically those components that affect their appearance. A GUI is added to make work presentable and easier, such as text fields that users can delete, copy, or modify buttons. The presentation tier is managed by some languages, like HTML, which can take inputs and display output.

Logic Tier

This layer is an intermediary layer, and it is also known as a data access tier. It lies between the data tier and the presentation tier. It handles data processing logic, business rules logic, and data management logic. Data processing logic means it can control the application’s functions and business rules, like different government legal rules, data rules, etc.

Data Tier

This component is responsible for data storage and retrieval from physical storage devices associated with the application. The responsibility of this layer is to keep data consistent and independent. This is basically a DBMS layer.

Characteristics of the Client-Server Architecture in DBMS

A client-server architecture works on the concept of a request-response architecture. The client will send any requests to the server, and the server will respond accordingly. Client and server must follow a common protocol so that they can’t face any difficulties communicating with each other. A server can manage a limited number of client requests at a time. There is also the possibility of some attacks like DOM (Denial of service) attacks, which can affect the services provided by servers.

Benefits in DBMS: Client-Server Database Architecture

This architecture is very simple and easy to use. It is not that complicated. The resources and data present in it are controlled by the server. Easy maintenance. You can easily repair, replace, or add users to it. We can easily add any number of clients to it. The server guarantees us only those clients who have permission to access and change data.

Disadvantages of the Client-Server Architecture

Traffic congestion on the network is an issue. If a server fails, then the client’s request cannot be fulfilled. The software and hardware used in it are very expensive. The network will become more complicated if there are a large number of clients.

To dive into the DBMS architecture topic in detail, please check out Scaler Topics