Support > Networking > Client/Server

The client/server model in the database environment is defined as a separation of information processing into two parts: a client portion that requests database information and a server portion which manages that database information.
The following figure illustrates the roles of the client and server portions:

Client/Server

There are many benefits to client/server architecture:

Network Performance

Many PC database systems extract data inefficiently from the server, resulting in increased network traffic. In this type of system all of the data needed to process a request travels over the network and the processing occurs on the client machine. The client/server model results in a decrease of network traffic because all data processing occurs on the server machine so that only the data requested by the client travels over the network.

Utilization of Resources

The client/server architecture also allows you to better utilize your company’s computer resources. Powerful machines can be utilized as servers since these machines tend to perform large amounts of data processing. Client/server architecture also utilizes the client machines because the power provided in the client side PC’s can be used to implement end-user applications that are user friendly. For example; an end-user is able to take advantage of a number of graphical user interfaces (GUI) such as Microsoft® Windows®.
The client/server separation also allows for a separation in the management of the database system. A company could have one group or department responsible for the maintenance and backup of the database and other groups responsible for the creation and maintenance of the database files.

Concurrence

For each server, multiple clients may attempt to simultaneously access the same information. The client/server model ensures concurrence, without jeopardizing data integrity, among multiple clients, The server resolves any concurrence issues. For example, if two clients update the same data at the same time, row level locking ensures that concurrence issues do not affect the integrity of the data.

Security

Security of the database can be enforced and managed because the client/server model defines a clear separation of information processing. The database remains properly guarded against improper access since the database server physically resides on a machine that is independent of the clients.