SlideShare a Scribd company logo
1 of 28
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

What's hot

The Database Environment Chapter 10
The Database Environment Chapter 10The Database Environment Chapter 10
The Database Environment Chapter 10Jeanie Arnoco
 
Datastage free tutorial
Datastage free tutorialDatastage free tutorial
Datastage free tutorialtekslate1
 
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAININGDATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAININGDatawarehouse Trainings
 
Week 17 slides 1 7 multidimensional, parallel, and distributed database
Week 17 slides 1 7 multidimensional, parallel, and distributed databaseWeek 17 slides 1 7 multidimensional, parallel, and distributed database
Week 17 slides 1 7 multidimensional, parallel, and distributed databaseAnne Lee
 
Datastage parallell jobs vs datastage server jobs
Datastage parallell jobs vs datastage server jobsDatastage parallell jobs vs datastage server jobs
Datastage parallell jobs vs datastage server jobsshanker_uma
 
Day 1 Data Stage Administrator And Director 11.0
Day 1 Data Stage Administrator And Director 11.0Day 1 Data Stage Administrator And Director 11.0
Day 1 Data Stage Administrator And Director 11.0kshanmug2
 
Physical Database Design & Performance
Physical Database Design & PerformancePhysical Database Design & Performance
Physical Database Design & PerformanceAbdullah Khosa
 
Tuning data warehouse
Tuning data warehouseTuning data warehouse
Tuning data warehouseSrinivasan R
 
data stage-material
data stage-materialdata stage-material
data stage-materialRajesh Kv
 
Ibm db2 analytics accelerator high availability and disaster recovery
Ibm db2 analytics accelerator  high availability and disaster recoveryIbm db2 analytics accelerator  high availability and disaster recovery
Ibm db2 analytics accelerator high availability and disaster recoverybupbechanhgmail
 
Chap02: The database Development process
Chap02: The database Development processChap02: The database Development process
Chap02: The database Development processahmed naveed
 
Dynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesDynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesCognizant
 
Db2 migration -_tips,_tricks,_and_pitfalls
Db2 migration -_tips,_tricks,_and_pitfallsDb2 migration -_tips,_tricks,_and_pitfalls
Db2 migration -_tips,_tricks,_and_pitfallssam2sung2
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database SystemSulemang
 
1 introduction ddbms
1 introduction ddbms1 introduction ddbms
1 introduction ddbmsamna izzat
 

What's hot (20)

Ch 13 D B Admin
Ch 13  D B  AdminCh 13  D B  Admin
Ch 13 D B Admin
 
The Database Environment Chapter 10
The Database Environment Chapter 10The Database Environment Chapter 10
The Database Environment Chapter 10
 
Distributed D B
Distributed  D BDistributed  D B
Distributed D B
 
Datastage free tutorial
Datastage free tutorialDatastage free tutorial
Datastage free tutorial
 
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAININGDATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
DATASTAGE AND QUALITY STAGE 9.1 ONLINE TRAINING
 
Week 17 slides 1 7 multidimensional, parallel, and distributed database
Week 17 slides 1 7 multidimensional, parallel, and distributed databaseWeek 17 slides 1 7 multidimensional, parallel, and distributed database
Week 17 slides 1 7 multidimensional, parallel, and distributed database
 
Datastage parallell jobs vs datastage server jobs
Datastage parallell jobs vs datastage server jobsDatastage parallell jobs vs datastage server jobs
Datastage parallell jobs vs datastage server jobs
 
Migration from 8.1 to 11.3
Migration from 8.1 to 11.3Migration from 8.1 to 11.3
Migration from 8.1 to 11.3
 
Day 1 Data Stage Administrator And Director 11.0
Day 1 Data Stage Administrator And Director 11.0Day 1 Data Stage Administrator And Director 11.0
Day 1 Data Stage Administrator And Director 11.0
 
Physical Database Design & Performance
Physical Database Design & PerformancePhysical Database Design & Performance
Physical Database Design & Performance
 
Tuning data warehouse
Tuning data warehouseTuning data warehouse
Tuning data warehouse
 
58750024 datastage-student-guide
58750024 datastage-student-guide58750024 datastage-student-guide
58750024 datastage-student-guide
 
data stage-material
data stage-materialdata stage-material
data stage-material
 
Ibm db2 analytics accelerator high availability and disaster recovery
Ibm db2 analytics accelerator  high availability and disaster recoveryIbm db2 analytics accelerator  high availability and disaster recovery
Ibm db2 analytics accelerator high availability and disaster recovery
 
Chap02: The database Development process
Chap02: The database Development processChap02: The database Development process
Chap02: The database Development process
 
Dynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesDynamics of Leading Legacy Databases
Dynamics of Leading Legacy Databases
 
Db2 migration -_tips,_tricks,_and_pitfalls
Db2 migration -_tips,_tricks,_and_pitfallsDb2 migration -_tips,_tricks,_and_pitfalls
Db2 migration -_tips,_tricks,_and_pitfalls
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database System
 
Datastage Introduction To Data Warehousing
Datastage Introduction To Data WarehousingDatastage Introduction To Data Warehousing
Datastage Introduction To Data Warehousing
 
1 introduction ddbms
1 introduction ddbms1 introduction ddbms
1 introduction ddbms
 

Similar to The Database Environment Chapter 9

Ch 8 Client Server
Ch 8  Client  ServerCh 8  Client  Server
Ch 8 Client Serverguest8fdbdd
 
client-server-architecture.ppt
client-server-architecture.pptclient-server-architecture.ppt
client-server-architecture.pptgowriganesh
 
client-server-architecture ss.ppt
client-server-architecture ss.pptclient-server-architecture ss.ppt
client-server-architecture ss.pptOsmanGani61
 
Client server based computing
Client server based computingClient server based computing
Client server based computingMohammad Affan
 
Presentation racsig 090730
Presentation racsig 090730Presentation racsig 090730
Presentation racsig 090730maclean liu
 
3 Tier Architecture
3  Tier Architecture3  Tier Architecture
3 Tier ArchitectureWebx
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architectureguestd0cc01
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architectureAmit rai Raaz
 
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Prolifics
 
Mainframe Architecture & Product Overview
Mainframe Architecture & Product OverviewMainframe Architecture & Product Overview
Mainframe Architecture & Product Overviewabhi1112
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...Christoph Adler
 
DB2 for z/O S Data Sharing
DB2 for z/O S  Data  SharingDB2 for z/O S  Data  Sharing
DB2 for z/O S Data SharingSurekha Parekh
 
Porting an Open Source Lp Solver to Web Assembly
 Porting an Open Source Lp Solver to Web Assembly Porting an Open Source Lp Solver to Web Assembly
Porting an Open Source Lp Solver to Web AssemblyFabion Kauker
 

Similar to The Database Environment Chapter 9 (20)

Ch 8 Client Server
Ch 8  Client  ServerCh 8  Client  Server
Ch 8 Client Server
 
CH12.ppt
CH12.pptCH12.ppt
CH12.ppt
 
Hoffer mdm11e pp_ch08
Hoffer mdm11e pp_ch08Hoffer mdm11e pp_ch08
Hoffer mdm11e pp_ch08
 
Chapter 12
Chapter 12Chapter 12
Chapter 12
 
Client server
Client serverClient server
Client server
 
client-server-architecture.ppt
client-server-architecture.pptclient-server-architecture.ppt
client-server-architecture.ppt
 
client-server-architecture ss.ppt
client-server-architecture ss.pptclient-server-architecture ss.ppt
client-server-architecture ss.ppt
 
Client server based computing
Client server based computingClient server based computing
Client server based computing
 
Presentation racsig 090730
Presentation racsig 090730Presentation racsig 090730
Presentation racsig 090730
 
Cloud ppt
Cloud pptCloud ppt
Cloud ppt
 
3 Tier Architecture
3  Tier Architecture3  Tier Architecture
3 Tier Architecture
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architecture
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
 
Bfc Presentation
Bfc PresentationBfc Presentation
Bfc Presentation
 
Moving to Design
Moving to DesignMoving to Design
Moving to Design
 
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
 
Mainframe Architecture & Product Overview
Mainframe Architecture & Product OverviewMainframe Architecture & Product Overview
Mainframe Architecture & Product Overview
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
 
DB2 for z/O S Data Sharing
DB2 for z/O S  Data  SharingDB2 for z/O S  Data  Sharing
DB2 for z/O S Data Sharing
 
Porting an Open Source Lp Solver to Web Assembly
 Porting an Open Source Lp Solver to Web Assembly Porting an Open Source Lp Solver to Web Assembly
Porting an Open Source Lp Solver to Web Assembly
 

More from Jeanie Arnoco

The Database Environment Chapter 15
The Database Environment Chapter 15The Database Environment Chapter 15
The Database Environment Chapter 15Jeanie Arnoco
 
The Database Environment Chapter 14
The Database Environment Chapter 14The Database Environment Chapter 14
The Database Environment Chapter 14Jeanie Arnoco
 
The Database Environment Chapter 13
The Database Environment Chapter 13The Database Environment Chapter 13
The Database Environment Chapter 13Jeanie Arnoco
 
The Database Environment Chapter 8
The Database Environment Chapter 8The Database Environment Chapter 8
The Database Environment Chapter 8Jeanie Arnoco
 
The Database Environment Chapter 7
The Database Environment Chapter 7The Database Environment Chapter 7
The Database Environment Chapter 7Jeanie Arnoco
 
The Database Environment Chapter 5
The Database Environment Chapter 5The Database Environment Chapter 5
The Database Environment Chapter 5Jeanie Arnoco
 
The Database Environment Chapter 4
The Database Environment Chapter 4The Database Environment Chapter 4
The Database Environment Chapter 4Jeanie Arnoco
 
The Database Environment Chapter 3
The Database Environment Chapter 3The Database Environment Chapter 3
The Database Environment Chapter 3Jeanie Arnoco
 
Introduction to BOOTSTRAP
Introduction to BOOTSTRAPIntroduction to BOOTSTRAP
Introduction to BOOTSTRAPJeanie Arnoco
 
Introduction to programming using Visual Basic 6
Introduction to programming using Visual Basic 6Introduction to programming using Visual Basic 6
Introduction to programming using Visual Basic 6Jeanie Arnoco
 
Hacking and Online Security
Hacking and Online SecurityHacking and Online Security
Hacking and Online SecurityJeanie Arnoco
 
(CAR)Cordillera Administrative Region
(CAR)Cordillera Administrative Region (CAR)Cordillera Administrative Region
(CAR)Cordillera Administrative Region Jeanie Arnoco
 
Quick sort-Data Structure
Quick sort-Data StructureQuick sort-Data Structure
Quick sort-Data StructureJeanie Arnoco
 
Quality Gurus Student
Quality Gurus StudentQuality Gurus Student
Quality Gurus StudentJeanie Arnoco
 
Partnering for Competition: External Partnership
Partnering for Competition: External PartnershipPartnering for Competition: External Partnership
Partnering for Competition: External PartnershipJeanie Arnoco
 
Partnering for Competition:Internal Partnership
Partnering for Competition:Internal PartnershipPartnering for Competition:Internal Partnership
Partnering for Competition:Internal PartnershipJeanie Arnoco
 
CROSBY’S PHILOSOPHY
CROSBY’S PHILOSOPHYCROSBY’S PHILOSOPHY
CROSBY’S PHILOSOPHYJeanie Arnoco
 
Deming’s 14 Points for Management
Deming’s 14 Points for ManagementDeming’s 14 Points for Management
Deming’s 14 Points for ManagementJeanie Arnoco
 

More from Jeanie Arnoco (20)

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

Recently uploaded

Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 

Recently uploaded (20)

OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 

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