Dbms Architecture
The design of a Database Management System (DBMS) is influenced by its architecture. A fundamental aspect of this is the client/server architecture, which accommodates numerous PCs, web servers, database servers, and other network-connected components.
In a client/server architecture, multiple PCs and workstations connect through a network. The architecture of the DBMS is determined by how users connect to the database to fulfill their requests.
Types of DBMS Architecture
Database architecture can be categorized as either single-tier or multi-tier. Logically, it primarily falls into two types: 2-tier architecture and 3-tier architecture
1-Tier Architecture
- Direct Access: Users interact directly with the database without any intermediary.
- Immediate Changes: Any modifications made are applied directly to the database.
- Limited Tools:Lacks user-friendly tools for end users.
- Development Focus:Primarily used for local application development.
- Quick Response: Allows programmers to communicate directly with the database for faster performance.
2-Tier Architecture
- Client-Server Model: The 2-tier architecture is a basic client-server setup.
- Direct Communication: Client applications can directly communicate with the database on the server side.
- API Usage: APIs such as ODBC and JDBC facilitate this interaction.
- Client-Side Operations: User interfaces and application programs run on the client side.
- Server-Side Functions: The server is responsible for query processing and transaction management.
- Connection Establishment : Client-side applications establish a connection with the server to communicate with the DBMS.
3- Tier Architecture
- Additional Layer: The 3-tier architecture includes an intermediate layer between the client and server.
- Indirect Communication: Clients cannot communicate directly with the server; they interact with an application server instead.
- Application Server Role: The application server acts as an intermediary that communicates with the database system.
- User Transparency: End users are unaware of the database's existence beyond the application server.
- Database Isolation: The database has no knowledge of users beyond the application layer.
- Large Applications: This architecture is commonly used for large web applications.