You are on page 1of 23

Outline

■ Introduction
■ Background
❏ Distributed DBMS Architecture
➠ Datalogical Architecture
➠ Implementation Alternatives
➠ Component Architecture
❏ Distributed DBMS Architecture
❏ Distributed Database Design
❏ Semantic Data Control
❏ Distributed Query Processing
❏ Distributed Transaction Management
❏ Parallel Database Systems
❏ Distributed Object DBMS
❏ Database Interoperability
❏ Current Issues
Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 1
Architecture

■ ✝Defines the structure of the system


➠ components identified

➠ functions of each component defined

➠ interrelationships and interactions between components


defined

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 2


ANSI/SPARC Architecture

Users

External External External External


Schema view view view

Conceptual Conceptual
view
Schema

Internal Internal view


Schema

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 3


Standardization
Reference Model
➠ A conceptual framework whose purpose is to divide standardization
work into manageable pieces and to show at a general level how these
pieces are related to one another.
Approaches
➠ Component-based
Components of the system are defined together with the

interrelationships between components.
◆ Good for design and implementation of the system.
➠ Function-based
◆ Classes of users are identified together with the functionality that
the system will provide for each class.
◆ The objectives of the system are clearly identified. But how do you
achieve these objectives?
➠ Data-based
◆ Identify the different types of describing data and specify the
functional units that will realize and/or use data according to these
views.
Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 4
Conceptual Schema Definition
RELATION EMP [
KEY = {ENO}
ATTRIBUTES = {
ENO : CHARACTER(9)
ENAME : CHARACTER(15)
TITLE : CHARACTER(10)
}
]
RELATION PAY [
KEY = {TITLE}
ATTRIBUTES = {
TITLE : CHARACTER(10)
SAL : NUMERIC(6)
}
]

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 5


Conceptual Schema Definition
RELATION PROJ [
KEY = {PNO}
ATTRIBUTES = {
PNO : CHARACTER(7)
PNAME : CHARACTER(20)
BUDGET : NUMERIC(7)
}
]
RELATION ASG [
KEY = {ENO,PNO}
ATTRIBUTES = {
ENO : CHARACTER(9)
PNO : CHARACTER(7)
RESP : CHARACTER(10)
DUR : NUMERIC(3)
}
]

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 6


Internal Schema Definition
RELATION EMP [
KEY = {ENO}
ATTRIBUTES = {
ENO : CHARACTER(9)
ENAME : CHARACTER(15)
TITLE : CHARACTER(10)
}
]

=========================================
INTERNAL_REL EMPL [
INDEX ON E# CALL EMINX
FIELD = {
HEADER : BYTE(1)
E# : BYTE(9)
ENAME : BYTE(15)
TIT : BYTE(10)
}
]

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 7


External View Definition –
Example 1

Create a BUDGET view from the PROJ relation

CREATE VIEW BUDGET(PNAME, BUD)


AS SELECT PNAME, BUDGET
FROM PROJ

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 8


External View Definition –
Example 2

Create a Payroll view from relations EMP and


TITLE_SALARY

CREATE VIEW PAYROLL (ENO, ENAME, SAL)


AS SELECT EMP.ENO,EMP.ENAME,PAY.SAL
FROM EMP, PAY
WHERE EMP.TITLE = PAY.TITLE

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 9


DBMS Implementation
Alternatives
Distribution
Distributed
Peer-to-peer
multi-DBMS
Distributed DBMS

Client/server

Autonomy

Multi-DBMS

Federated DBMS
Heterogeneity

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 10


Dimensions of the Problem
■ Distribution
➠ Whether the components of the system are located on the same
machine or not
■ Heterogeneity
➠ Various levels (hardware, communications, operating system)
➠ DBMS important one
◆ data model, query language,transaction management
algorithms
■ Autonomy
➠ Not well understood and most troublesome
➠ Various versions
◆ Design autonomy: Ability of a component DBMS to decide on
issues related to its own design.
◆ Communication autonomy: Ability of a component DBMS to
decide whether and how to communicate with other DBMSs.
◆ Execution autonomy: Ability of a component DBMS to execute
local operations in any manner it wants to.

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 11


Datalogical Distributed
DBMS Architecture

ES1 ES2 ... ESn

GCS

LCS1 LCS2 ... LCSn

LIS1 LIS2 ... LISn

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 12


Datalogical Multi-DBMS
Architecture

GES1 GES2 ... GESn

LES11 … LES1n GCS LESn1 … LESnm

LCS1 LCS2 … LCSn

LIS1 LIS2 … LISn

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 13


Timesharing Access to a Central
Database
Terminals or PC terminal emulators
• No data
storage
• Host
running all
software
Batch Response Network
requests
Communications
Application Software

DBMS Services

Database

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 14


Multiple Clients/Single Server
Applications Applications Applications

Client Client Client


Services Services Services
Communications Communications Communications

LAN
High-level Filtered
requests data only
Communications

DBMS Services

Database

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 15


Task Distribution
Application
QL Programmatic
Interface … Interface
Communications Manager
SQL result
query table
Communications Manager

Query Optimizer
Lock Manager
Storage Manager
Page & Cache Manager

Database

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 16


Advantages of Client-Server
Architectures
■ More efficient division of labor
■ Horizontal and vertical scaling of resources
■ Better price/performance on client machines
■ Ability to use familiar tools on client machines
■ Client access to remote data (via standards)
■ Full DBMS functionality provided to client
workstations
■ Overall better system price/performance

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 17


Problems With Multiple-
Client/Single Server

■ Server forms bottleneck


■ Server forms single point of failure
■ Database scaling difficult

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 18


Multiple Clients/Multiple Servers
■ directory Applications
■ caching Client
■ query decomposition Services
Communications
■ commit protocols

LAN

Communications Communications

DBMS Services DBMS Services

Database Database

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 19


Server-to-Server
■ SQL interface
Applications
■ programmatic
Client
interface Services
■ other application Communications
support
environments
LAN

Communications Communications

DBMS Services DBMS Services

Database Database

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 20


Peer-to-Peer
Component Architecture
USER PROCESSOR DATA PROCESSOR

Global Local System Local


External Conceptual Conceptual Log Internal
Schema GD/D
Schema Schema Schema
User
requests Database

Local Recovery
User Interface

Semantic Data

Global Query

Local Query
Controller

Execution
Optimizer

Processor

Processor
Handler

Manager

Runtime
Monitor

Support
USER Global

System
responses

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 21


Components of a Multi-DBMS
USER
Global
Responses Requests
GTP GUI GQP

GS GRM GQO

Local Component Interface Processor Component Interface Processor Local


Requests (CIP) (CIP) Requests

User Transaction Transaction User


D Interface Manager D Manager Interface
B Query
Scheduler B Scheduler
Query
M
Processor … M
Processor
Query Recovery Recovery Query
S Optimizer Manager S Manager Optimizer
Runtime Sup. Runtime Sup.
Processor Processor

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 22


Directory Issues
Type

Local & central Local & distributed


Global & central & non-replicated (?) & non-replicated
& non-replicated

Global & distributed


Local & central & non-replicated (?)
& replicated (?)

Location
Global & central
& replicated (?)
Local & distributed
& replicated

Global & distributed


Replication & replicated

Distributed DBMS © 1998 M. Tamer Özsu & Patrick Valduriez Page 4. 23