Database - McMaster University

Download Report

Transcript Database - McMaster University

Client/Server Computing

Client/Server Computing

  Information processing is distributed among several workstations and servers on a network, with each function being assigned to the environment that is best suited to perform it. The client initiates the requests and the server responds.

Consolidate the virtues of traditional time shared mainframe and mini-computer paradigms with the advantages of personal computers, workstations, and local area networks

Components of Client/Server Computing

  Three interrelated components Client - the front-end Server - the back-end Network - the middle ware M:N relation between clients and servers.

A Basic Client/Server Computing Model

Client/Server Architecture

   The client is any computer process that requests services from the server. It is also known as the front-end application.

The server is any computer process providing services to the clients. The server is also known as the back-end application.

The communication middleware is any computer process(es) through which clients and servers communicate. It is also known as middleware or communications layer.

How Client And Server Components Interact

Two levels of communications middleware

  The physical level deals with the communications between client and server computers (computer to computer).

The logical level deals with the communications between client and server processes (process to process).

Interaction Between Client/Server Middleware Components

Database Middleware Components

   Application programming interface (API) interfaces with the client application.

The database translator translates the SQL requests into the specific database server syntax.

The network translator manages the network communications protocols.

Database Middleware Components

Three Main Benefits of Using Middleware

   Access multiple databases Database server-independent Network protocol-independent

Middleware Accessing Multiple Database Servers

Application Functional Logic Components

Typical Logic Component Placement

     The presentation logic is always placed on the client side.

The I/O processing logic may be placed on the client side or on the server side, but more commonly on the client side.

The business logic can also go either to the client or the server, but usually on the client side.

The data management logic can also be placed on either the client or the server side, but normally on the server side as part of the application code.

The data manipulation logic is most commonly located on the server side.

Functional Logic Splitting In Four Client/Server Architectural Styles

Microsoft SQL Client/Server Connection

Client PC

Microsoft SQL (workstation version)

Server Computer

Microsoft SQL (server version) LAN

Microsoft SQL Client/Server Connection   At the server site, DBA creates a SQL database for the user At the client site, the user can make remote registration and logon to access SQL database stored on the server

MicroSoft SQL Server

   SQL Server registration local and remote servers SQL Server security control Windows NT authentication SQL user authentication User access privilege specification

SQL Client/Server Connection

Remote SQL server registration User authentication using your user name and password MGD B106 Computer or your own PC Buscom SQL server Your database created by DBA Import/export Local SQL server Local SQL server registration Backup Backup disk / restore You create your own database

Linking to SQL Server from Access Client 1 Microsoft Access ODBC LAN DB Server Microsoft SQL Client 2 Microsoft Access ODBC Internet Web Server ASP ODBC

ODBC

  Open Database Connectivity DBMS-independent means for processing relational database data    ORACLE SYBASE INFORMIX Page 342

ODBC Terminology

   Data source: the database, its associated DBMS, operating system, and network platform Driver manager: intermediary between the application and DBMS drivers Driver: processes ODBC requests and submits SQL statements to a data source Page 343

ODBC Architecture

Page 343 Figure 13-5 © 2000 Prentice Hall