The design architecture of a DBMS can be classified as single-tier or multi-tier. Any programmer can directly use the database in single-tier architecture, and the modifications are directly applied to the database itself. Multi-tier architecture acts as a client-server-based system where the client-side applications can communicate with the server end database.
In a 3-tier architecture, the client application cannot directly commute with the server database as the application server layer exists between the client and server. The client-end application first interacts with an application server that further transfers to the database. Each tier in this architecture is independent and can be modified individually, which follows data abstraction. Users are unaware of the hidden detailed architecture and the complications of data storage.
Presentation or user tier: End-users are allowed to interact with the database using this layer. They can create, update or access the database according to the permissions granted to them. Generally, users are unaware of the overall structure and inner complexities of the database.
Application tier: All programs or software that can access the database reside on this layer. Also, the application server exists in this layer which acts as a mediator between users and the database server. As both users and databases are not aware of the structure beyond their tiers, the application layer provides communication between them.
Database tier: Complete data, its procedures, and the languages used to process data everything resides in this layer.