Multi-User DBMS Architecture.
The architectures that are used to implement multi user DBMS are :
- Teleprocessing
- File Server
- Client Server
1.11.1 Teleprocessing :
- One computer with a single Central Processing Unit (CPU) and
- A number of terminals.
All processing is performed within
the boundaries of the same physical computer.
User terminals are
typically the 'Dumb Terminals'. They are incapable of functioning at
their own and they are attached by cable to the central computer.
The
terminals send messages via. the communication control sub-system.
1.11.2 File Server :
In a file server environment, the processing is
distributed about the network, typically the Local Area Network (LAN).
The file server holds the files required by the application and the
DBMS. However, the applications and DBMS run on each workstation,
requesting files from the file server when necessary.
The file server
acts simply as a shared data disk. The DBMS on each workstation sends
requests to the file server for all data that the DBMS requires that it
is stored on disk.
This approach can generate significant amount of
network traffic, which can lead to performance problems.
The file server architecture has three main disadvantages :
- There is a large amount of network traffic.
- A full copy of DBMS is required on each workstation.
- Concurrency, Recovery and Integrity control are more complex because there can be multiple DBMS accessing the same files.
1.11.3 Client Server :
To overcome the disadvantages of the first two methods the client-server architecture was developed. As the name suggests there is :
A client process, which requires some resource,
A server process, which provides the resource.
There is no requirement that the client and server must reside on the same machine. In the database context, the client manages the user interface and the application logic.
- It takes the user requests.
- Checks the syntax.
- Generates database requests in SQL or another database language.
- Transmits the message to the server, waits for response and formats the response for the end-user.
The server process :
- Accepts and processes the database requests.
- Transmits the result to the client.
Processing of the requests involves checking authorization, ensuring integritY, maintaining the system catalog, and performing query and update processing. In addition, it also provides concurrency and recovery control.
Following are the advantages of Client Server architecture :
- It enables wider access to existing databases.
- Increased Performance : If the clients and the server reside on different computers then different computers can be processing application in parallel.
- Hardware Costs may be Reduced : It is the only server that requires the storage and processing sufficient to store and manage the database.
- Communication Costs are Reduced : Applications carry out part of operations on the client and send only the requests for database access over the network.
- Increased Consistency : The server can handle integrity checks, so that constraints need be defined and validated only in one place.
- It Maps on to Open : System architecture quite naturally.
Summary of Client Server Functions :
Client
- Manages the user interface.
- Accepts and checks syntax of user input.
- Generates database requests and transmits to the server.
- Passes response back to user.
Server
- Accepts and processes database requests from clients.
- Checks authorization.
- Ensures integrity constraints not violated.
- Performs query/update processing and transmits response to the client.
- Maintains system catalogue.
- Provides concurrent database access.
- Provides recovery control.
Alternative client server topologies are :
- Single Client, Single Server.
- Multiple Client, Single Server.
- Multiple Client, Multiple Server.
1.11.3.1 Transaction Processing Monitors :
A program that controls data transfer between clients and servers in order to provide a consistent environment, particularly for online transaction processing. The transaction processing monitor is a middleware component that provides access to the services of a number of resource managers and provides uniform interface for programmers who are developing the transactional software.
Transaction processing monitor Transaction Processing monitor provides significant advantages :
1. Transaction Routing : The transaction processing monitor can increase the scalability by directing the transactions to specific DBMS.
2. Managing Distributed Transactions : The transaction processing monitor can manage transactions that require access to data held in multiple DBMS.
3. Load Balancing : The transaction processing monitor can balance client requests across multiple DBMSs on one or more computers by directing client calls to the least loaded server.
4. Funneling : In environments with a large number of users, it may sometimes be difficult for all users to be logged on simultaneously to the DBMS. The transaction processing monitor can establish connections with DBMSs as and when required and can funnel user requets through these connections.
5. Increased Reliability : The TP monitor acts as transaction manager, performing the necessary actions to maintain the consistency of the database, with the DBMS acting as the resource manager.
2. Managing Distributed Transactions : The transaction processing monitor can manage transactions that require access to data held in multiple DBMS.
3. Load Balancing : The transaction processing monitor can balance client requests across multiple DBMSs on one or more computers by directing client calls to the least loaded server.
4. Funneling : In environments with a large number of users, it may sometimes be difficult for all users to be logged on simultaneously to the DBMS. The transaction processing monitor can establish connections with DBMSs as and when required and can funnel user requets through these connections.
5. Increased Reliability : The TP monitor acts as transaction manager, performing the necessary actions to maintain the consistency of the database, with the DBMS acting as the resource manager.
Multi-User DBMS Architecture.
Reviewed by Hardik Pandya
on
1:48:00 PM
Rating:
No comments: