New Page 1
Welcome to basicsofcomputer.com
 

Share This Free Knowledge With Your Friends:

Home » Client Server Database Systems & Open Database Connectivity (ODBC) » Client Server Architecture

Client Server Architecture:

Definition and Explanation:

Client-Server architecture is a computer network, in which application processing is divided between client and server. The computers in the network that process the application programs are designated as clients. The computer that processes the database and provides services to the clients is designated as database server.

In client-server architecture, a large number of PCs, workstations, printers and more than one server (such as file-server, database server, web server) are connected together via a network (LAN or WAN), The PCs or small workstations as clients are connected to the server. In DBMS environment, a server that contains the database and DBMS software is known as database server, which controls all the functions of DBMS. Multiple database servers can be used in a network.

Roles of Client and Server Computers:

The main roles of client and server computers are:

  • The client computer is responsible for managing the user interface, send requests to database server, receive results of the requests, and to run local applications. Mostly, the microcomputers are used as client computers.
     
  • The database server is responsible for database storage and access. All database functions are controlled by the database server. Any type of computer can be used as database server. It may be microcomputer, minicomputer or mainframe computer. In large organization networks, the mainframe computers are used as server.

Some people refer to the central DBMS functions as the back-end functions, whereas the application programs on the client computer as front-end programs. You can say that client is the application, which is used to interface with the DBMS, while database server is a DBMS.

The clients and server may use different operating systems. A client-server database system is different than the centralized database system on a mainframe.

The main differences are:

(i) Application program is running on the client in client-server architecture, while in mainframe computer, the user runs the application program inside mainframe.

(ii) Client is an intelligent terminal, while terminal used in mainframe are dump terminal.

The client-server architecture is mostly adopted into commercial DBMS. In RDBMS, the server is also called the SQL server, because most of the RDBMS servers are based on the SQL language and standard. The functionality of SQL is divided into client and server. The query and transaction functionalities remained at the server side. In such type of architecture, the server is often called a query server.

The user-interface programs (or application programs) run at the client side. These programs establish connections of clients to the DBMS on the server side. Once the connection is created, the client program can communicate with the DBMS on the server side.

A standard called ODBC (Open Database Connectivity) provides an application programming interface (API), which allows client side programs to call the DBMS on the server side. For this purpose, necessary software should be installed on both sides (i.e., client and server). Hence, a client program connects to the DBMS server and sends requests (queries) using the ODBC Application Programming Interface (API). The-server processes the queries and sends back the results of queries to the client program, which are processed by the client computer.

Functions of Client and Server Computers:

In client-server database systems, the server contains the DBMS and controls all functions of DBMS. The users send requests to database server via the client computer connected to network. The database server receives the requests (or queries) from clients and answers the requests. The communication software is used on both sides for establishing communication between them.

The main functions of client and server are:

1. Functions of the Client:

A client is used as front-end to communicate with the database server. It plays very important role in the client-server environment. It performs the following functions.

It presents and manages the user-interface through application program and data manipulation functions.

  • It sends the queries to the database server that is processed by the server.
  • It interprets (decodes) the results sent by server and presents the results to user.
  • It also executes the local application.
  • It has the ability to process further the queries results received from server.
  • It can also send and receive messages or files to and from different clients in the network environment.
  • It enforces the constraints applied in the application program.

2. Functions of Database Server:

The database server contains the DBMS software and database file. It controls all the functions of the DBMS and provides services to clients. The main functions of database server are:

  • It manages the database stored inside it.
  • It receives requests (or queries) from client, interprets and executes the requests and sends the results of requests to the relevant clients.
  • It manages the recovery security services of the DBMS.
  • It enforces the constraints that are specified inside the DBMS.
  • It controls and manages all the clients that are connected to it.
  • It handles all database access and control functions.
  • It provides concurrent access control.

Client-Server Advantages:

Client-Server architecture provides several advantages for DBMS, but the most important advantages are:

(a). The cost to process the data of databases is reduced. It is because; microcomputers and small workstations are available with very low cost. Similarly, the microcomputer (having high computing power and storage) can be designated as server. On the other hand, mainframe computers are very costly.

(b). The application programs used on the client computer provide the graphical users interfaces (GUIs). For example, these applications provide the forms, menus, etc. to access data from server. The users can easily work in this environment.

(c). It provides better security and server hides the DBMS from clients.

(d). It provides the multi-user environment. Several users can access the database simultaneously

(e). All the data is stored on the data server therefore, the DBA can easily create the backup of the database.

Client-Server Disadvantages:

Although, there are many advantages of client-server architecture but concurrency problems may occur. For example, if multiple users are trying to update
the same data of database at the same time (simultaneously) then final result of operation may be incorrect.

Relevant Articles:

Client Server Database Systems
Client Server Architecture
Open Database Connectivity (ODBC)
 
New Page 1

Basic Computer Science

   
» The Age of Information

» Types of Computer and Digital Age

» Input and Output Devices

» Storage Devices Of Computer

» Central Processing Unit

» Software: The Power Behind The Power

» Data Communication and Computer Networks

» The Nature Of Information

» The System Theory

» Transaction Processing System (TPS) and Management Information System (MIS)

» Decision Support System (DSS) and Executive Support System (ESS)

» Expert System (ES) and Office Information System (OIS)

 

Operating Systems

   
» Introduction to Operating System

» Introduction to Process Management

» Threads and CPU Scheduling

» Process Synchronization in Operating System

» Deadlocks

» Memory Management in Operating System

» Virtual Memory in Operating System

» File System Management in Operating System

» I/O and Device Management

» Security

» Linux Operating System

 

Database Management System

   
» Introduction to Database Systems

» Database System Architecture

» Database Administration and Database Development Process

» The Entity-Relationship Model

» Semantic Object Model

» Logical Database Design and Relational Data Model

» Normalization in Database

» Transformation of E-R Model into Relational Data Model

» Representing Semantic Object Model and Types of Semantic Object Model

» Physical Database Design

» Introduction to Structured Query Language (SQL)

» Implementation of Relational Database and Database Application Design

» Client Server Database Systems & Open Database Connectivity (ODBC)

 

Questions and Answers

   
» Basics of Information Technology

» Computer Architecture

» Data Communication

» Information Networks

» Fundamentals of the Internet

» Application and Uses of Computer

» Security, Copyright and The Law

» Windows Operating Systems

» Spreadsheet Software

» Process Management in CPU

» CPU Scheduling

» Process Synchronization

» Deadlocks

» Memory Management

» Database Systems

» Database System Architecture

» Database Administration and Database Development Process
 
 
New Page 1
 

Home                Dictionary                 Contact us                   About us                    Privacy policy                  Link to us                   Advertise

Copy right ©  2012