Most users of a database system today are not present at the site of the database system, but connect to it through a network.
We can therefore differentiate between client machines, on which remote database users’ work, and server machines, on which the database system runs.
Database applications are usually partitioned into two or three parts. They are:
Two – Tier Architecture.
Three – Tier Architecture.
Two – Tier Architecture
The application is partitioned into a component that resides at the client machine, which invokes database system functionality at the server machine through query language statements.
Application program interface standards like ODBC and JDBC are used for interaction between the client and the server.
The architectures described here are called two-tier architectures because the software components are distributed over two systems: client and server.
The advantages of this architecture are its simplicity and seamless compatibility with existing systems.
The emergence of the Web changed the roles of clients and servers, leading to the three-tier architecture.
Three – Tier Architecture
Many Web applications use an architecture called the three-tier architecture, which adds an intermediate layer between the client and the database server, as illustrated
The client machine acts as merely a front end and does not contain any direct database calls. Instead, the client end communicates with an application server, usually through forms interface.
The application server in turn communicates with a database system to access data.
The business logic of the application, which says what actions to carry out under what conditions, is embedded in the application server, instead of being distributed across multiple clients.
Three-tier applications are more appropriate for large applications, and for applications that run on the World Wide Web.