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:
Client/server computing is more and more important for the most basic of reasons: it offers increased speed, control, and efficiency in data management.