Types of DBMS Architecture underlying Client/Server Framework


Types of DBMS Architecture underlying Client/Server Framework

Two main types of basic DBMS architectures were created on this underlying client/server framework:

1)    Two-Tier Client/Server Architecture: The query and transaction functionality remained on the server side. In such architecture, the server is often called a query server or transaction server. In RDBMS, the server is also often called an SQL server, since most RDBMS servers are based on the SQL language and standard.

In such a client/server architecture, the user interface programs and application programs can run on the client side. When DBMS access is required, the program establishes a connection to the DBMS (which is on the server side); once the connection is created, the client program can communicate with the DBMS.

A standard called Open Database Connectivity (ODBC) provides an Application Programming Interface (API), which allows client-side programs to call the DBMS, as long as both client and server machines have the necessary software installed. Most DBMS vendors provide ODBC drivers for their systems. Hence, a client program can actually connect to several RDBMS and send query and transaction requests using the ODBC API, which are then processed at the server sites.

The second approach to client/server architecture was taken by some object-oriented DBMSs. .Because many of these systems were developed in the era of client/server architecture, the approach taken was to divide the software modules of the DBMS between client and server in a more integrated way.


2)    Three-Tier Client/Server Architecture: Web applications use architecture called the three-tier architecture, which adds an intermediate layer between the client and the database server. This intermediate layer or middle tier is sometimes called the application server and sometimes the web server, depending on the application. This server plays an intermediary role by storing business rules (procedures or constraints) that are used to access data from the database server. It can also improve database security by checking a client's credentials before forwarding a request to the database server.

Clients contain GUI interfaces and some additional application-specific business rules. The intermediate server accepts requests from the client, processes the request and sends database commands to the database server, and then acts as a channel for passing (partially) processed data from the database server to the clients, where it may be processed further and filtered to be presented to users in GUI format. Thus, the user interface, application rules, and data access act as the three tiers.