chapter 3 database architectures and the web. multi-user dbms architectures u teleprocessing u...

34
Chapter 3 Database Architectures and the Web

Upload: emerson-waide

Post on 14-Dec-2015

268 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Chapter 3

Database Architectures

and the Web

Page 2: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-User DBMS Architectures

Teleprocessing

File-server

Client-server

Page 3: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Teleprocessing

Traditional architecture Single mainframe with number of terminals

attached

Page 4: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

File-Server

File-server connected to several workstations across network

Database resides on file-server

DBMS and applications run on each workstation

Disadvantages:– Significant network traffic– Copy of DBMS on each workstation– Concurrency, recovery and integrity control more

complex

Page 5: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

File-Server Architecture

Page 6: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Traditional Two-Tier Client-Server

Client (tier 1) manages user interface and runs applications

Server (tier 2) holds database and DBMS

Advantages:– wider access to existing databases– increased performance– possible reduction in hardware costs– reduction in communication costs– increased consistency

Page 7: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Traditional Two-Tier Client-Server

Page 8: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Traditional Two-Tier Client-Server

Page 9: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Three-Tier Client-Server

Problems preventing true scalability in 2-tier:– ‘Fat’ client, requiring considerable resources on

client’s computer to run effectively– Significant client side administration overhead

1995 - three layers proposed

Page 10: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Three-Tier Client-Server

Advantages: – ‘Thin’ client

» Requires less expensive hardware

– Application maintenance centralized– Easier to modify/replace one tier without affecting

others– Separation business logic from database functions

→ easier to implement load balancing – Maps naturally to Web environment

Page 11: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Three-Tier Client-Server

Page 12: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Transaction Processing Monitors (TPM)

Program that controls data transfer between clients and servers in order to provide a consistent environment, particularly for Online Transaction Processing (OLTP).

Page 13: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

TPM

Transaction processing monitor– Controls data transfer between clients/servers– Provides a consistent environment, particularly

for online transaction processing (OLTP)– Significant advantages

» Transaction routing» Managing distributed transactions» Load balancing» Funneling» Increased reliability

Page 14: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

TPM as middle tier of 3-tier client-server

Page 15: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

Teleprocessing– Traditional architecture for multi-user systems– One computer with a single central processing

unit (CPU) and a number of terminals– Put a huge burden on the central computer

Downsizing– Replacing expensive mainframe computers

with more cost-effective networks of personal computers

Page 16: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

File-server architecture– Processing distributed about network– Disadvantages:

» Large amount of network traffic» Full copy of DBMS required on each workstation» Concurrency, recovery, and integrity control are complex

Page 17: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

Traditional two-tier client–server architecture– Client process requires some resource– Server provides the resource– Basic separation of four main components of

business application– Typical interaction between client and server

Page 18: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Summary of client–server functions

Page 19: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

Three-tier client–server architecture– User interface layer– Business logic and data processing layer– DBMS– Many advantages over traditional two-tier or

single-tier designs

Page 20: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

N-tier architectures– Three-tier architecture can be expanded to n

tiers Application servers

– Hosts an application programming interface (API) to expose business logic and business processes for use by other applications

Page 21: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Multi-user DBMS Architectures

Middleware– Software that mediates with other software – Communication among disparate applications– Six main types

» Asynchronous Remote Procedure Call (RPC)» Synchronous RPC» Publish/Subscribe» Message-Oriented middleware (MOM)» Object-request broker (ORB)» SQL-oriented data access

Page 22: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Web Services and Service-Oriented Architectures

Web service– Software system that supports interoperable

machine-to-machine interaction over network– No user interface– Examples of Web services

» Microsoft Virtual Earth Web service

– Uses widely accepted technologies and standards

Page 23: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Web Services and Service-Oriented Architectures

Service-Oriented Architectures (SOA)– Architecture for building applications that

implement business processes as sets of services

Some principles built upon:– Loose coupling– Reusability– Composability

Page 24: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Traditional vs. SOA Architecture

Page 25: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Distributed DBMSs

Distributed database– Logically interrelated collection of shared data

physically (single database) distributed over network

Distributed DBMS– Software system that permits management of

distributed database – Distribution transparent to users

Page 26: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Distributed DBMSs

Characteristics of DDBMS– Collection of logically related shared data– Data split into fragments– Fragments may be replicated– Fragments/replicas allocated to sites– Sites linked by communications network– Data at each site controlled by DBMS– DMBS handles local apps autonomously– Each DBMS in one or more global app

Page 27: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Distributed DBMSs

Distributed processing– Centralized database that can be accessed over

computer network System consists of data physically distributed

across number of sites in network

Page 28: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Data Warehousing

Data warehouse– Consolidated/integrated view of corporate data – Drawn from disparate operational data sources – Range of end-user access tools capable of

supporting simple to highly complex queries to support decision making

– Subject-oriented, integrated, time-variant, and nonvolatile

Page 29: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Typical Architecture of a Data Warehouse

Page 30: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Components of a DBMS

Major components of a DBMS:– Query processor– Database manager (DM)– File manager– DML preprocessor– DDL compiler– Catalog manager

Page 31: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Components of a DBMS

Major software components for database manager– Authorization control– Command processor– Integrity checker– Query optimizer

– Transaction manager

– Scheduler– Recovery manager– Buffer manager

Page 32: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Oracle Architecture

Oracle’s logical database structure– Tablespaces– Schemas– Data blocks – Extents/segments

Page 33: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Relationship between an Oracle Database,Tablespaces, and Datafiles

Page 34: Chapter 3 Database Architectures and the Web. Multi-User DBMS Architectures u Teleprocessing u File-server u Client-server

Oracle Architecture

Oracle’s physical database structure– Datafiles– Redo log files– Control files

The Oracle instance – Oracle processes and shared memory required

to access information in the database