You are on page 1of 20

CLIENT SERVER AND

DATABASES
DATABASE MIDDLEWARE
COMPONENT
• In Client/Server architecture the middleware software provides
the means through which clients and servers communicate
• The middleware software is divided into three main components

1. Application programming interface (API)


2. Database translator
3. Network translator
The application programming interface (API)
• Is public to the client application
• Programmer interact with middleware thro API
• Allows the programmer to write generic SQL code
instead of code specific to each database server
• The API allows the server to be changed without
completely rewriting the client applications
The database translator
• Translate the SQL requests into the specific
database server syntax
• Takes the generic SQL request and maps it to
the database server’s SQL protocol
The Network translator
• Manages the communication protocols
• Handles all communications detail of each
database transparently to the client
application
INTERACTION BETWEEN CLIENT/SERVER
MIDDLEWARE COMP0NENT
Benefits of using middleware software
• Access multiple and quite different databases.
• Be database server independent
• Be network protocol independent
Services provided by communication
middleware
• Means through which client and servers communicate
• Provides specialized services to the client process that insulates the
front-end applications programmer from the internal working of the
database server and network protocols
• For example the use of database middleware yields network
independence and database server independence
• The use of database middleware makes it possible for programmers
to use the generic SQL sentences to access different and multiple
database servers
ACCESS TO MULTIPLE DATABASES
ACCESS TO MULTIPLE DATABASES
• The figure shows a client application request data from an Oracle
database server and a Microsoft database server
• The database translator layer of middleware software contains two
modules, one for each database server type to be accessed
• Each module handles the details of each database communication
protol
• The network translator layer takes care of using the correct network
protocol to access each database
DISTRIBUTED CLIENT/SERVER
DATABASE SYSTEMS
• Distributed data refers to the basic data stored in the server, which is
distributed to different members of the work team.
• Example a customer’s ordering and payment information stored in a
central server and the records are accessed in various locations
throughout the company.
• Distributed processing refers to the way different tasks are organized
among members of the work team.
• Example the various locations work with the customer’s data in
unique ways in order to achieve a specific goal e.g. update customer
records, their activities are distributed processing
Distributed Data
Distributed Processing
Characteristics of distributed client/server
database systems
• The location of the data is transparent to the user. The data can be
located in the local PC or department server across the country.
• The data can be distributed among different locations and among
different databases using the same or even different data models
• The data in database can be partitioned in several ways and the
partitioned data may be allocated in several different ways and the
data may be replicated in several nodes
• Data allocation strategies are centralized, partitioned and replicated
Data Replication
Suppose database A is divided
into fragments A1 and A2
Within a replicated distributed
database the scenario is shown in
figure
Fragment A1 is stored at sites S1
and S2
Fragment A2 is stored at sites S2
and S3
The user does not need to know
how to get there or what
protocols are used to get there.
Distributed DBMS
• Client/server database is known for having distributed database
capabilities
• The architecture features a client and a server
• The client called transaction processer sends a request to the server the
data processor
• The DBMS must be able to manage the distribution of data among
multiple nodes.
• The DBMS must provide distributed database transparency features like
distribution transparency, transaction transparency, failure transparency,
performance transparency and heterogeneity transparency
WEB/DATABASE SYSTEMS FOR
CLIENT/SERVER APPLICATIONS
• In Web database integration a client machine that runs a web browser
issues a request for information in the form of URL reference
• This reference triggers a program at the web server that issues the
correct database command to a database server
• The output returned to the web server is converted into a HTML
format and returned to the web browser. See fig on next slide
WEB DATABASE SYSTEM
INTEGRATION
Advantages of WEB/Database compared
to Traditional Database
• Administration: The only connection to the database server is the web
browser hence addition of a new type of database server does not
require configurations at each type of client machine
• Deployment: Browsers are already available across all platforms,
which relieves the developer of the need to implement GUI aScross
multiple machines and operating systems
• Speed: Large portion of the normal development cycle eg
development and design do not apply to web design projects
• Information presentation: application developers are able to employ
whatever information structure is best for given application,
Disadvantages of WEB/Database
compared to Traditional Database
• Functionality: A typical web browser has limited functionality
compared to sophisticated GUI
• Operations: The web browser keeps no information between
transactions to track the states of the user

You might also like