A 3-tier architecture is a widely used architecture to design a relational database. It separates its tiers from each other based on the complexity of the users and how they use the data present in the database.
The three tiers are as follows:
- Presentation Tier
- Application Tier
- Database Tier
This is also called as User tier. End-users operate on this tier and they know nothing about the existence of the database. Multiple views of the database can be provided by the application. All views generated by the application reside in the application tier.
The application tier sits in the middle and acts as a mediator between the presentation layer and the database layer. This tier is also called the middle tier or the business tier.
This tier consists of the application server and the business logic programs that access the database. For a user, this application tier presents an abstract view of the database. End-users do not connect to the database directly. They only interact with the application. They are unaware of any existence of the database beyond the application.
This data tier consists of the database and database servers along with query processing languages. The data is stored and retrieved in this tier. We also have the relations that define the data and their constraints at this level. The database tier is not aware of any other user beyond the application tier.
3-tier database architecture is highly modifiable, as almost all its components are independent and can be changed independently.