SlideShare a Scribd company logo
1
© Prentice Hall, 2002
Chapter 9:Chapter 9:
The Client/Server DatabaseThe Client/Server Database
EnvironmentEnvironment
Modern Database Management
6th
Edition
Jeffrey A. Hoffer, Mary B. Prescott, Fred R.
McFadden
2Chapter 9 © Prentice Hall,
Client/Server SystemsClient/Server Systems
Networked computing model
Processes distributed between clients and
servers
Client – Workstation (usually a PC) that
requests and uses a service
Server – Computer (PC/mini/mainframe)
that provides a service
For DBMS, server is a database server
3Chapter 9 © Prentice Hall,
Application Logic in C/SApplication Logic in C/S
SystemsSystems
 Presentation Logic
– Input – keyboard/mouse
– Output – monitor/printer
 Processing Logic
– I/O processing
– Business rules
– Data management
 Storage Logic
– Data storage/retrieval
GUI Interface
Procedures, functions,
programs
DBMS activities
4Chapter 9 © Prentice Hall,
Client/Server ArchitecturesClient/Server Architectures
File Server Architecture
Database Server Architecture
Three-tier Architecture
Client does
extensive processing
Client does little
processing
5Chapter 9 © Prentice Hall,
File Server ArchitectureFile Server Architecture
 All processing is done at the PC that requested the
data
 Entire files are transferred from the server to the
client for processing.
 Problems:
– Huge amount of data transfer on the network
– Each client must contain full DBMS
 Heavy resource demand on clients
 Client DBMSs must recognize shared locks, integrity checks, etc.
FATFAT
CLIENTCLIENT
6Chapter 9 © Prentice Hall,
Figure 9-2 – File Server Architecture
FATFAT
CLIENTCLIENT
7Chapter 9 © Prentice Hall,
Database Server ArchitecturesDatabase Server Architectures
 2-tiered approach
 Client is responsible for
– I/O processing logic
– Some business rules logic
 Server performs all data storage and access processing
 DBMS is only on server
 Advantages
– Clients do not have to be as powerful
– Greatly reduces data traffic on the network
– Improved data integrity since it is all processed centrally
– Stored procedures  some business rules done on server
8Chapter 9 © Prentice Hall,
Advantages ofAdvantages of
Stored ProceduresStored Procedures
Compiled SQL statements
Reduced network traffic
Improved security
Improved data integrity
Thinner clients
9Chapter 9 © Prentice Hall,
Figure 9-3 – Database server architecture
ThinneThinne
rr
clientsclients
DBMS onlyDBMS only
on serveron server
10Chapter 9 © Prentice Hall,
Three-Tier ArchitecturesThree-Tier Architectures
Three layers:
– Client
– Application server
– Database server
Thin Client
 PC just for user interface and a little application
processing. Limited or no data storage (sometimes no
hard drive)
GUI interface
(I/O processing) Browser
Business rules Web Server
Data storage
DBMS
11Chapter 9 © Prentice Hall,
Figure 9-4 -- Three-tier architecture
ThinnestThinnest
clientsclients
Business rules onBusiness rules on
separate serverseparate server
DBMS only onDBMS only on
DB serverDB server
12Chapter 9 © Prentice Hall,
Advantages of Three-TierAdvantages of Three-Tier
ArchitecturesArchitectures
Scalability
Technological flexibility
Long-term cost reduction
Better match of systems to business needs
Improved customer service
Competitive advantage
Reduced risk
13Chapter 9 © Prentice Hall,
Challenges of Three-tierChallenges of Three-tier
ArchitecturesArchitectures
High short-term costs
Tools and training
Experience
Incompatible standards
Lack of compatible end-user tools
14Chapter 9 © Prentice Hall,
Application PartitioningApplication Partitioning
Placing portions of the application code in
different locations (client vs. server)
AFTER it is written
Advantages
– Improve performance
– Improve interoperability
– Balanced workloads
15Chapter 9 © Prentice Hall,
Processing Logic DistributionsProcessing Logic Distributions
2-tier distributions
n-tier distributions
Processing logic could be
at client, server, or both
Processing logic will be at
application server or Web
server
16Chapter 9 © Prentice Hall,
Parallel ComputerParallel Computer
ArchitecturesArchitectures
Tightly Coupled
– Symmetric Multiprocessing (SMP)
– Multiple CPUs
– Shared RAM
Loosely Coupled
– Massively Parallel Processing (MPP)
– Multiple CPUs
– Each CPU has its own RAM space
17Chapter 9 © Prentice Hall,
Parallel Computer ArchitecturesParallel Computer Architectures
Figure 9-6 –
Tightly-coupled – CPUs share
common memory space
Figure 9-7 –
Loosely-coupled – CPUs each
have their own memory space
18Chapter 9 © Prentice Hall,
Query Processing withQuery Processing with
Parallel ProcessorsParallel Processors
Figure 9-5(a) –
Parallel transactions
Figure 9-5(b) –
Parallel query
19Chapter 9 © Prentice Hall,
MiddlewareMiddleware
Software which allows an application to
interoperateinteroperate with other software
No need for programmer/user to understand
internal processing
Accomplished via Application ProgramApplication Program
InterfaceInterface (API)
The “glue”“glue” that holds client/server applications together
20Chapter 9 © Prentice Hall,
Types of MiddlewareTypes of Middleware
 RPC – Remote Procedure Calls (RPC)
– client makes calls to procedures running on remote computers
– synchronous and asynchronous
 Message-Oriented Middleware (MOM)
– asynchronous calls between the client via message queues
 Publish/Subscribe
– push technology  server sends information to client when
available
 Object Request Broker (ORB)
– Object-oriented management of communications between
clients and servers
 SQL-oriented Data Access
– Middleware between applications and database servers
21Chapter 9 © Prentice Hall,
Database MiddlewareDatabase Middleware
ODBC – Open Database Connectivity
– Most DB vendors support this
OLE-DB
– Microsoft enhancement of ODBC
JDBC – Java Database Connectivity
– Special Java classes that allow Java
applications/applets to connect to databases
22Chapter 9 © Prentice Hall,
Client/Server SecurityClient/Server Security
Network environment  complex security
issues
Security levels:
– System-level password security
 for allowing access to the system
– Database-level password security
 for determining access privileges to tables;
read/update/insert/delete privileges
– Secure client/server communication
 via encryption
23Chapter 9 © Prentice Hall,
Query-by-Example (QBE)Query-by-Example (QBE)
Direct-manipulation database language
Graphical approach
Available in MS Access
MS Access translates QBE to SQL and vice
versa
Useful for end-user database programming
Good for ad hoc processing and prototyping
24Chapter 9 © Prentice Hall,
Figure 9-10:
QBE view of
a 2-table join
query
Figure 9-12:
Equivalent
query in SQL
25Chapter 9 © Prentice Hall,
Figure 9-9: Access usability hierarchy
Foundation of MS Access
Simple processes
Stored modules of pre-
existing VBA code
Visual Basic for
Applications…language for
customizing the application
API to call functions in
DLLs external to MS Access
26Chapter 9 © Prentice Hall,
Using ODBC to Link External DatabasesUsing ODBC to Link External Databases
Stored on a Database ServerStored on a Database Server
 Open Database Connectivity (ODBC)
– API that provides a common language for application programs to
access and process SQL databases independent of the particular
RDBMS that is accessed
 Required parameters:
– ODBC driver
– Back-end server name
– Database name
– User id and password
 Additional information:
– Data source name (DSN)
– Windows client computer name
– Client application program’s executable name
Java Database Connectivity (JDBC) is similar to ODBC – built specifically for Java applications
27Chapter 9 © Prentice Hall,
ODBC ArchitectureODBC Architecture
(Figure 9-18)(Figure 9-18)
Each DBMS has its own ODBC-compliant driver
Client does not need
to know anything
about the DBMS
Application Program
Interface (API) provides
common interface to all
DBMSs
28Chapter 9 © Prentice Hall,
Visual Basic for ApplicationsVisual Basic for Applications
VBA is the programming language that
accompanies Access 2000
VBA provides these features:
– Ability to perform complex functionality
– Error handling
– Faster execution than macros
– Easier maintenance
– OLE automation
– Programmatic control
– Ease of reading for programmers
 Event-driven – nonprocedural programming that detects
events and generates appropriate responses

More Related Content

PPT
The Database Environment Chapter 12
PPT
The Database Environment Chapter 6
PPT
The Database Environment Chapter 1
PPT
The Database Environment Chapter 2
PPT
The Database Environment Chapter 11
PPT
Ch 1 D B Environment
PPT
Ch 7 Physical D B Design
PPT
Ch 2 D B Dvlpt Process
The Database Environment Chapter 12
The Database Environment Chapter 6
The Database Environment Chapter 1
The Database Environment Chapter 2
The Database Environment Chapter 11
Ch 1 D B Environment
Ch 7 Physical D B Design
Ch 2 D B Dvlpt Process

What's hot (20)

PPT
Ch 13 D B Admin
PPT
The Database Environment Chapter 10
PPT
Distributed D B
PPTX
Datastage free tutorial
PPT
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
PDF
Week 17 slides 1 7 multidimensional, parallel, and distributed database
DOC
Datastage parallell jobs vs datastage server jobs
DOCX
Migration from 8.1 to 11.3
PDF
Day 1 Data Stage Administrator And Director 11.0
PDF
Physical Database Design & Performance
PDF
Tuning data warehouse
PDF
58750024 datastage-student-guide
PDF
data stage-material
PDF
Ibm db2 analytics accelerator high availability and disaster recovery
PPT
Chap02: The database Development process
PDF
Dynamics of Leading Legacy Databases
DOCX
Db2 migration -_tips,_tricks,_and_pitfalls
PPT
Distributed Database System
PPT
Datastage Introduction To Data Warehousing
PPTX
1 introduction ddbms
Ch 13 D B Admin
The Database Environment Chapter 10
Distributed D B
Datastage free tutorial
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
Week 17 slides 1 7 multidimensional, parallel, and distributed database
Datastage parallell jobs vs datastage server jobs
Migration from 8.1 to 11.3
Day 1 Data Stage Administrator And Director 11.0
Physical Database Design & Performance
Tuning data warehouse
58750024 datastage-student-guide
data stage-material
Ibm db2 analytics accelerator high availability and disaster recovery
Chap02: The database Development process
Dynamics of Leading Legacy Databases
Db2 migration -_tips,_tricks,_and_pitfalls
Distributed Database System
Datastage Introduction To Data Warehousing
1 introduction ddbms
Ad

Similar to The Database Environment Chapter 9 (20)

PPT
Ch 8 Client Server
PPT
CH12.ppt
PPT
Hoffer mdm11e pp_ch08
PPTX
Chapter 12
PPT
client-server-architecture.ppt
PPT
client-server-architecture ss.ppt
PPT
9. Distributed Systems Architecture.pptnnihi
PPTX
lecture-11-1590405846 computer architect
PDF
Client server based computing
PPT
Presentation racsig 090730
PDF
Comprehensive Guide to Effective Database Application Development Principles
PPTX
Cloud ppt
PPTX
CSC-UNIT-1-INTRODUCTION TO CLIENT SERVER COMPUTING.pptx
PPTX
CSC- INTRODUCTION TO CLIENT SERVER COMPUTING.pptx
PPT
3 Tier Architecture
PPT
3 Tier Architecture
PDF
Peoplesoft PIA architecture
PPS
Bfc Presentation
PPT
Moving to Design
Ch 8 Client Server
CH12.ppt
Hoffer mdm11e pp_ch08
Chapter 12
client-server-architecture.ppt
client-server-architecture ss.ppt
9. Distributed Systems Architecture.pptnnihi
lecture-11-1590405846 computer architect
Client server based computing
Presentation racsig 090730
Comprehensive Guide to Effective Database Application Development Principles
Cloud ppt
CSC-UNIT-1-INTRODUCTION TO CLIENT SERVER COMPUTING.pptx
CSC- INTRODUCTION TO CLIENT SERVER COMPUTING.pptx
3 Tier Architecture
3 Tier Architecture
Peoplesoft PIA architecture
Bfc Presentation
Moving to Design
Ad

More from Jeanie Arnoco (20)

PPT
The Database Environment Chapter 15
PPT
The Database Environment Chapter 14
PPT
The Database Environment Chapter 13
PPT
The Database Environment Chapter 8
PPT
The Database Environment Chapter 7
PPT
The Database Environment Chapter 5
PPT
The Database Environment Chapter 4
PPT
The Database Environment Chapter 3
PPT
Introduction to BOOTSTRAP
PPT
Introduction to programming using Visual Basic 6
PPTX
Hacking and Online Security
PPTX
(CAR)Cordillera Administrative Region
PPTX
Quick sort-Data Structure
PPTX
Quality Gurus Student
PPT
QUALITY STANDARDS
PPTX
Partnering for Competition: External Partnership
PPTX
Partnering for Competition:Internal Partnership
PPTX
CROSBY’S PHILOSOPHY
PPTX
Juran’s Trilogy
PPTX
Deming’s 14 Points for Management
The Database Environment Chapter 15
The Database Environment Chapter 14
The Database Environment Chapter 13
The Database Environment Chapter 8
The Database Environment Chapter 7
The Database Environment Chapter 5
The Database Environment Chapter 4
The Database Environment Chapter 3
Introduction to BOOTSTRAP
Introduction to programming using Visual Basic 6
Hacking and Online Security
(CAR)Cordillera Administrative Region
Quick sort-Data Structure
Quality Gurus Student
QUALITY STANDARDS
Partnering for Competition: External Partnership
Partnering for Competition:Internal Partnership
CROSBY’S PHILOSOPHY
Juran’s Trilogy
Deming’s 14 Points for Management

Recently uploaded (20)

PDF
Computing-Curriculum for Schools in Ghana
PPTX
Cell Structure & Organelles in detailed.
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
Pharma ospi slides which help in ospi learning
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
Classroom Observation Tools for Teachers
PPTX
GDM (1) (1).pptx small presentation for students
PPTX
Lesson notes of climatology university.
PPTX
Institutional Correction lecture only . . .
Computing-Curriculum for Schools in Ghana
Cell Structure & Organelles in detailed.
Module 4: Burden of Disease Tutorial Slides S2 2025
Final Presentation General Medicine 03-08-2024.pptx
TR - Agricultural Crops Production NC III.pdf
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Microbial disease of the cardiovascular and lymphatic systems
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Supply Chain Operations Speaking Notes -ICLT Program
Pharma ospi slides which help in ospi learning
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
O7-L3 Supply Chain Operations - ICLT Program
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Microbial diseases, their pathogenesis and prophylaxis
2.FourierTransform-ShortQuestionswithAnswers.pdf
Classroom Observation Tools for Teachers
GDM (1) (1).pptx small presentation for students
Lesson notes of climatology university.
Institutional Correction lecture only . . .

The Database Environment Chapter 9

  • 1. 1 © Prentice Hall, 2002 Chapter 9:Chapter 9: The Client/Server DatabaseThe Client/Server Database EnvironmentEnvironment Modern Database Management 6th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden
  • 2. 2Chapter 9 © Prentice Hall, Client/Server SystemsClient/Server Systems Networked computing model Processes distributed between clients and servers Client – Workstation (usually a PC) that requests and uses a service Server – Computer (PC/mini/mainframe) that provides a service For DBMS, server is a database server
  • 3. 3Chapter 9 © Prentice Hall, Application Logic in C/SApplication Logic in C/S SystemsSystems  Presentation Logic – Input – keyboard/mouse – Output – monitor/printer  Processing Logic – I/O processing – Business rules – Data management  Storage Logic – Data storage/retrieval GUI Interface Procedures, functions, programs DBMS activities
  • 4. 4Chapter 9 © Prentice Hall, Client/Server ArchitecturesClient/Server Architectures File Server Architecture Database Server Architecture Three-tier Architecture Client does extensive processing Client does little processing
  • 5. 5Chapter 9 © Prentice Hall, File Server ArchitectureFile Server Architecture  All processing is done at the PC that requested the data  Entire files are transferred from the server to the client for processing.  Problems: – Huge amount of data transfer on the network – Each client must contain full DBMS  Heavy resource demand on clients  Client DBMSs must recognize shared locks, integrity checks, etc. FATFAT CLIENTCLIENT
  • 6. 6Chapter 9 © Prentice Hall, Figure 9-2 – File Server Architecture FATFAT CLIENTCLIENT
  • 7. 7Chapter 9 © Prentice Hall, Database Server ArchitecturesDatabase Server Architectures  2-tiered approach  Client is responsible for – I/O processing logic – Some business rules logic  Server performs all data storage and access processing  DBMS is only on server  Advantages – Clients do not have to be as powerful – Greatly reduces data traffic on the network – Improved data integrity since it is all processed centrally – Stored procedures  some business rules done on server
  • 8. 8Chapter 9 © Prentice Hall, Advantages ofAdvantages of Stored ProceduresStored Procedures Compiled SQL statements Reduced network traffic Improved security Improved data integrity Thinner clients
  • 9. 9Chapter 9 © Prentice Hall, Figure 9-3 – Database server architecture ThinneThinne rr clientsclients DBMS onlyDBMS only on serveron server
  • 10. 10Chapter 9 © Prentice Hall, Three-Tier ArchitecturesThree-Tier Architectures Three layers: – Client – Application server – Database server Thin Client  PC just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive) GUI interface (I/O processing) Browser Business rules Web Server Data storage DBMS
  • 11. 11Chapter 9 © Prentice Hall, Figure 9-4 -- Three-tier architecture ThinnestThinnest clientsclients Business rules onBusiness rules on separate serverseparate server DBMS only onDBMS only on DB serverDB server
  • 12. 12Chapter 9 © Prentice Hall, Advantages of Three-TierAdvantages of Three-Tier ArchitecturesArchitectures Scalability Technological flexibility Long-term cost reduction Better match of systems to business needs Improved customer service Competitive advantage Reduced risk
  • 13. 13Chapter 9 © Prentice Hall, Challenges of Three-tierChallenges of Three-tier ArchitecturesArchitectures High short-term costs Tools and training Experience Incompatible standards Lack of compatible end-user tools
  • 14. 14Chapter 9 © Prentice Hall, Application PartitioningApplication Partitioning Placing portions of the application code in different locations (client vs. server) AFTER it is written Advantages – Improve performance – Improve interoperability – Balanced workloads
  • 15. 15Chapter 9 © Prentice Hall, Processing Logic DistributionsProcessing Logic Distributions 2-tier distributions n-tier distributions Processing logic could be at client, server, or both Processing logic will be at application server or Web server
  • 16. 16Chapter 9 © Prentice Hall, Parallel ComputerParallel Computer ArchitecturesArchitectures Tightly Coupled – Symmetric Multiprocessing (SMP) – Multiple CPUs – Shared RAM Loosely Coupled – Massively Parallel Processing (MPP) – Multiple CPUs – Each CPU has its own RAM space
  • 17. 17Chapter 9 © Prentice Hall, Parallel Computer ArchitecturesParallel Computer Architectures Figure 9-6 – Tightly-coupled – CPUs share common memory space Figure 9-7 – Loosely-coupled – CPUs each have their own memory space
  • 18. 18Chapter 9 © Prentice Hall, Query Processing withQuery Processing with Parallel ProcessorsParallel Processors Figure 9-5(a) – Parallel transactions Figure 9-5(b) – Parallel query
  • 19. 19Chapter 9 © Prentice Hall, MiddlewareMiddleware Software which allows an application to interoperateinteroperate with other software No need for programmer/user to understand internal processing Accomplished via Application ProgramApplication Program InterfaceInterface (API) The “glue”“glue” that holds client/server applications together
  • 20. 20Chapter 9 © Prentice Hall, Types of MiddlewareTypes of Middleware  RPC – Remote Procedure Calls (RPC) – client makes calls to procedures running on remote computers – synchronous and asynchronous  Message-Oriented Middleware (MOM) – asynchronous calls between the client via message queues  Publish/Subscribe – push technology  server sends information to client when available  Object Request Broker (ORB) – Object-oriented management of communications between clients and servers  SQL-oriented Data Access – Middleware between applications and database servers
  • 21. 21Chapter 9 © Prentice Hall, Database MiddlewareDatabase Middleware ODBC – Open Database Connectivity – Most DB vendors support this OLE-DB – Microsoft enhancement of ODBC JDBC – Java Database Connectivity – Special Java classes that allow Java applications/applets to connect to databases
  • 22. 22Chapter 9 © Prentice Hall, Client/Server SecurityClient/Server Security Network environment  complex security issues Security levels: – System-level password security  for allowing access to the system – Database-level password security  for determining access privileges to tables; read/update/insert/delete privileges – Secure client/server communication  via encryption
  • 23. 23Chapter 9 © Prentice Hall, Query-by-Example (QBE)Query-by-Example (QBE) Direct-manipulation database language Graphical approach Available in MS Access MS Access translates QBE to SQL and vice versa Useful for end-user database programming Good for ad hoc processing and prototyping
  • 24. 24Chapter 9 © Prentice Hall, Figure 9-10: QBE view of a 2-table join query Figure 9-12: Equivalent query in SQL
  • 25. 25Chapter 9 © Prentice Hall, Figure 9-9: Access usability hierarchy Foundation of MS Access Simple processes Stored modules of pre- existing VBA code Visual Basic for Applications…language for customizing the application API to call functions in DLLs external to MS Access
  • 26. 26Chapter 9 © Prentice Hall, Using ODBC to Link External DatabasesUsing ODBC to Link External Databases Stored on a Database ServerStored on a Database Server  Open Database Connectivity (ODBC) – API that provides a common language for application programs to access and process SQL databases independent of the particular RDBMS that is accessed  Required parameters: – ODBC driver – Back-end server name – Database name – User id and password  Additional information: – Data source name (DSN) – Windows client computer name – Client application program’s executable name Java Database Connectivity (JDBC) is similar to ODBC – built specifically for Java applications
  • 27. 27Chapter 9 © Prentice Hall, ODBC ArchitectureODBC Architecture (Figure 9-18)(Figure 9-18) Each DBMS has its own ODBC-compliant driver Client does not need to know anything about the DBMS Application Program Interface (API) provides common interface to all DBMSs
  • 28. 28Chapter 9 © Prentice Hall, Visual Basic for ApplicationsVisual Basic for Applications VBA is the programming language that accompanies Access 2000 VBA provides these features: – Ability to perform complex functionality – Error handling – Faster execution than macros – Easier maintenance – OLE automation – Programmatic control – Ease of reading for programmers  Event-driven – nonprocedural programming that detects events and generates appropriate responses