On October 23rd, 2014, we updated our
By continuing to use LinkedIn’s SlideShare service, you agree to the revised terms, so please take a few minutes to review them.
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.
Advantages & Disadvantages of File Sharing Architecture
(limited) Ability to share data among several users
Costs of storage spread out among users
Most components are now commodity items - prices falling
Limited data sharing ability - a few users at most
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.
Client / Server Architecture clients Server
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
Application Logic in Client/Sever Systems Procedures, functions, programs
Input – keyboard/mouse
Output – monitor/printer
File Server Architecture
Database Server Architecture
Client does extensive processing Client does little processing
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.
Two-tier database server architecture Thinner clients DBMS only on 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
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
Advantages of Stored Procedures
Compiled SQL statements
Reduced network traffic
Improved data integrity
Three-tier Client/Server Architecture
Three-tier Architecture Thinnest clients Business rules on application server DBMS only on Database server
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 Client
Advantages of Three-Tier Architectures
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
Long-term cost reduction
Better match of systems to business needs
Improved customer service
Challenges/Disadvantages of Three-tier Architectures
System complexity - extremely complex to program and debug