Advantages and Disadvantages of Three-Tier Architecture in DBMS
Three-Tier Architecture :
The 3-Tier architecture, intermediate servers handle the client request, which coordinates the execution of the client request with subordinate servers. It adds middle ware(middle tire), which provides a way for clients of one DBMS to access data from another DBMS.
Generally, a two-tier client server model is used to access the data from one DBMS server, which is a centralized system. Another method of distribution is to store several equivalent databases in different places, which is termed as a Distributed Database system(DDS).
For instance, a different customer list can be stored at each branch in several states organized by an organization with many branches. The tables are distributed but connected, so the DBMS is able to find the information for any customer at any time for any location.
As from the above figure(a), we can say the client as first-Tier, server (cpu) as application server tier or middle-Tier or second-Tier, and the database as the Third-Tier or database server Tier.
Three-Tier Architecture is basically three layers –
- First-Tier (The client-tier)
- Second-Tier (Application server-tier/middle-tier)
- Third-Tier (Database-server-tier)
Advantages of Three-Tier Architecture :
- The key three-tier benefit is improved scalability, since the application servers can be deployed on many machines. Also, the database does not make longer connections with every client – it only requires connections from a smaller number of application servers.
- It improves data integrity. Here, all the updated information goes through the second tier. The second tier can ensure that only important information is allowed to be updated in the database and the risk of unreliable client applications corrupting information is removed.
- Security is improved since the client does not have direct access to the database; it is more difficult for a client to obtain unauthorized data. Business logic is more secure because it is stored on a secure central server.
- Balancing of load is much easier with division of core business from the server of the database.
- High performance, lightweight, persistent object.
- Better to re-use.
- Scalability : each item can scale horizontally.
- Performance : Because the presentation tier can cache request, network utilization is minimized the load is reduced.
- Easy to maintain and modification.
- Improve data integrity.
- Improve security
- The client is ‘thin’. This is the reason behind the use of less expensive hardware.
- Change management is easier and faster to execute, because program logic/business logic is implemented on the centralized server.
- The added modularity makes it easier to modify or replace one tier without affecting the other tier.
Disadvantages of Three-Tier Architecture:
- It is more complex than the 2-tier client-server computing model, because it is more difficult to build a 3-tier application compared to a 2-tier application. The points of communication are doubled.
- The client does not maintain a persistent database connection.
- A separate proxy server may be required.
- Network traffic will be increased if a separate proxy server is used.
- The physical separation of application servers containing business logic functions and database servers containing databases may be something that affects performance.
- Improve complexity or effort.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.