Client Server Architecture1

Post on 02-Nov-2014

9303 Views

Category:

Career

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

client server architecture!

Transcript

Personal Computer - Stand-Alone Database Database (or files) reside on a PC - on

the hard disk. Applications run on the same PC and

directly access the database. In such cases, the application is the DBMS.

Business rules are enforced in the applications running on the PC.

A single user accesses the applications.

2

File Server Architecture

All processing is done at the PC that requested the data

Entire files are transferred from the server to the client for processing

Problems: Huge amount of data transfer on the network Each client must contain full DBMS

Heavy resource demand on clients Client DBMSs must recognize shared locks, integrity

checks, etc.

3

FAT FAT CLIENTCLIENT

4

File Server Architecture

FAT FAT CLIENTCLIENT

File Sharing Architecture PCs are connected to a local area network (LAN). A single file server stores a single copy of the

database files. Applications run on each PC on the LAN and access

the same set of files on the file server. The application is also the DBMS.

Business rules are enforced in the applications - Also, the applications must handle concurrency control. Possibly by file locking.

Each user runs a copy of the same application and accesses the same files.

Example: Sharing MS Access files on a file server.

5

Advantages & Disadvantages of File Sharing Architecture Advantages: (limited) Ability to share data among

several users Costs of storage spread out among users Most components are now commodity

items - prices falling Disadvantages:

Limited data sharing ability - a few users at most

6

Client/server Architecture Client-server architecture developed as a response to

the limitations of file-sharing architectures, which require tons of bandwidth and can often stall or jam a network causing it to crash. They require low shared usage and low volume of data to be transferred. In client-server architecture, the database server replaced the file server. Relational data base management systems (DBMSs) answered user queries directly. Since only specific queries were being answered, only that data was transferred instead of entire files that slow down networks. It also improved consistency in data between users, since all users had access to the same updated information.

7

8Client / Server Architecture

clientsclients

ServerServer

Client/Server Systems

Networked computing model Processes distributed between

clients and servers Client – Workstation (usually a PC)

that requests and uses a service Server – Computer

(PC/mini/mainframe) that provides a service

For DBMS, server is a database server

9

Application Logic in Client/Sever Systems

10

Procedures, functions,programs

Processing Logic I/O processing Business rules Data management

DBMS activitiesStorage Logic

Data storage/retrieval

GUI Interface

Presentation Logic Input – keyboard/mouse Output – monitor/printer

Client/Server Architectures

File Server Architecture

Database Server Architecture

Three-tier Architecture

11

Client does extensive processing

Client does little processing

Two-tier Architecture Two tier architectures consist of three components: user system

interfaces, processing management, and database management. User system interface (USI) is a component of an organization’s decision support system, which includes human decision-makers. It provides a user friendly layer of communication to make requests of the server and offers multiple forms of input and output. USIs include features like display management services, sessions, text input, and dialog. Processing management includes process development, process implementation, process monitoring, and process resources services. Database management includes database and file services.

Two tier client-server design derives its name from how it distributes work between client and server. Clients access databases through the user system interface. Database management, on the server side, distributes processing between both client and server. Both tiers, the client and the server, are responsible for some of the processing management. Simply put, the client uses the user interface to make requests through database management on the server side.

12

13Two-tier database server architecture

Thinner Thinner clientsclients

DBMS only DBMS only on serveron server

Two-Tier Database Server Architectures Client is responsible for

I/O processing logic Some business rules logic

Server performs all data storage and access processing DBMS is only on server

14

Advantages of Two-Tier Approach Clients do not have to be as powerful Greatly reduces data traffic on the network Improved data integrity since it is all

processed centrally Improve usability though user-friendly, form-

based interfaces. Improve scalability because two tiered

systems can hold up to 100 users, whereas file server architectures can only accommodate 12.

best suited to homogeneous environments for processing non-complex, non-time sensitive information.

Stored procedures some business rules done on server

15

Advantages of Stored Procedures Compiled SQL statements Reduced network traffic Improved security Improved data integrity Thinner clients

16

Three-tier Client/Server Architecture

17

18

Three-tier Architecture

Thinnest clientsThinnest clients

Business rules on Business rules on application serverapplication server

DBMS only on DBMS only on Database Database serverserver

Three-Tier Architectures

19

Thin Client PC just for user interface and a little application

processing. Limited or no data storage (sometimes no hard drive)

GUI interface (I/O processing)

Browser

Business rules Web Server

Data storage DBMS

ClientClient

Application serverApplication server

Database serverDatabase server

Advantages of Three-Tier Architectures

Scalability Centralize applications logic (one place to make

changes) Relieves clients from having to load up on applications

logic (the "fat client" approach). Frees up DBMS server to efficiently process

transactions Technological flexibility Long-term cost reduction Better match of systems to business needs Improved customer service Competitive advantage Reduced risk 20

Challenges/Disadvantages of Three-tier Architectures System complexity - extremely complex to

program and debug Security issues High short-term costs Tools and training Experience Incompatible standards Lack of compatible end-user tools

21

Thank You

22

top related