Friday, February 20, 2009

Web-DBMS Architecture

1) TRADITIONAL TWO-TIER CLIENT-SERVER ARCHITECTURE

Data-intensive business applications consist of four major components : the database, the transaction logic, the application logic, and the user interface. In the environment, these components were all in one place, as would expected in highly centralized business environment.
Figure 1 The Traditional two-tier client-server architecture

To accommodate an increasingly decentralized business environment , the two client-server system was developed. The traditional two-tier client-server architecture provides a basic separation of tasks.

The client (tier 1) is primarily responsible for the presentation of data to the user.
The server (tier 2) is primarily responsible for supplying data services to the client, as figure 1.

Presentation services handle user interface actions and the main business application logic. Data services provide limited business application logic, typically validation that the client is unable to carry out due to lack of information and access to the requested data independent of its location. The data can come from relational DBMSs, object-relational DBMSs, object-oriented DBMSs, legacy DBMSs, or proprietary data access system. Typically, the client would run on end-user desktops and interact with a centralized database server over a network.


2) TREE TIER ARCHITECTURE

The need for enterprise scalability challenged this traditional two-tier client-server model. In the mid-1990s, as applications became more complex and potentially could be deployed to hundreds or thousands of end-users, the client side presented two problems that prevented true scalability :
  • A ‘fat’ client, requiring considerable resources on the client’s computer to run effectively. This includes disk space, RAM and CPU power.
  • A significant client-server administration overhead.

By 1995, a new variation of the traditional two-tier client-server model appeared to solve the problem of enterprise scalability. This new architecture proposed three layers, each potentially running on a different platform :
  1. The user interface layer, which run on the end-user’s computer (the client).
  2. the business logic and data processing layer. This middle tier runs on a server and is often called the application server.
  3. A DBMS, which mores the data required by the middle tier. This tier may run on a separate server called the database server.
Figure 2 The Three tier architecture

As illustrated in figure 2, the client is now responsible only for the application’s user interface and perhaps performing same simple logic processing, such as input validation theory providing a ‘thin’ client. The core business logic of the application now resides in its own layer, physically connected to the client and database server over a local area network (LAN) or wide area network (WAN). One application server is designed to server multiple clients.

The three tier design has many advantages over traditional two-tier or single-tier designs which include :
  1. The need for less expensive hardware because the client is ‘thin’.
  2. Application maintenance is centralized with the transfer of the business logic for many end-users into a single application server. This eliminates the concerns of software distribution that are problematic in the traditional two-tier client-server model.
  3. the added modularity makes it easier to modify or replace one tier without affecting the other tiers.
  4. load balancing is easier with the separation of the core business logic from the database function.

An additional advantages is that the three-tier architecture maps quite naturally to the Web environment, with a Web browser acting as the ‘thin’ client, and a web server acting as the application server. The three-tier architecture can be extended to n-tiers, with additional tiers added to provide more flexible and scalability.

0 comments:

Post a Comment

 
Template by Administrator Frelia | Anak SD | Blogger