Product Documentation

Database Administrator's Guide

Previous Topic

Next Topic

Client/Server Computing

Client/server computing removes most of the difficult and tedious issues of database management from application programs and assigns these operations to a separate program, called a data server, which operates between the application program and its data.

In client/server computing, application programs are clients making requests of a server, which goes to the relevant files, executes all operations needed to carry out the request, and sends back a response to the client application.

To implement this design, an application program needs to communicate with the database server. Exact details about which information-processing tasks are carried out by the application and which are carried out by the server depend on the server involved and on the “client-side” data management code used in the application.

The following diagrams illustrate how client/server computing is different from direct database manipulation.

In the standalone method of database operations, applications deal with files directly, using functions supplied by a third party (e.g., the FairCom DB multi-user non-server library), or user supplied functions. All responsibility for security, coherence, and speed of access, in a single user or a multi-user environment, are the responsibility of the application code using data management functions.

In the client/server architecture, database operations function in a client application program interfaced to a database server. The database server contains the “intelligence” needed to process requests from clients, interact with the relevant database files, wherever they are located, and respond to those requests.

The database server in client/server computing plays a number of roles all of which add power to applications with a minimum of effort, including:

  • Minimizes the flow of information from one place to another. By processing and responding to communication “request” and “response” messages between application programs and database files, the data server eliminates the need to send whole files of information from place to place. Only relevant data moves across the network.
  • Manages multi-user issues. The server manages requests so users don’t get in one another’s way, or create inconsistencies in the database.
  • Coordinates sending and receiving of information over networks even where database files and/or applications reside on different types of machines and operating systems (heterogeneous support).
  • Implements transaction processing (see Data Integrity in the FairCom DB Programmers Reference Guide).
  • Implements security features (described in FairCom Server Access Configuration).
  • Offers absolute data integrity through file mirroring.

Client/server computing is more and more important for the most basic of reasons: it offers increased speed, control, and efficiency in data management.