0% found this document useful (0 votes)
0 views

Unit 4_Concept of Distributed DBMS

Uploaded by

omvati343
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views

Unit 4_Concept of Distributed DBMS

Uploaded by

omvati343
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Outline

Introduction
What is a distributed DBMS
Problems
Current state-of-affairs
Background
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 Page 1.1
File Systems

program 1
File 1
data description 1

program 2
data description 2 File 2

program 3
data description 3 File 3

Distributed DBMS Page 1.2


Database Management
Application
program 1
(with data
semantics)
DBMS

description
Application
program 2 manipulation
(with data database
semantics) control

Application
program 3
(with data
semantics)

Distributed DBMS Page 1.3


Motivation

Database Computer
Technology Networks
integration distribution

Distributed
Database
Systems
integration

integration ≠ centralization
Distributed DBMS Page 1.4
Distributed Computing

A concept in search of a definition and a name.

A number of autonomous processing elements


(not necessarily homogeneous) that are
interconnected by a computer network and that
cooperate in performing their assigned tasks.

Distributed DBMS Page 1.5


Distributed Computing

Synonymous terms
distributed function
distributed data processing
multiprocessors/multicomputers
satellite processing
backend processing
dedicated/special purpose computers
timeshared systems
functionally modular systems

Distributed DBMS Page 1.6


What is distributed …

Processing logic
Functions
Data
Control

Distributed DBMS Page 1.7


What is a Distributed Database
System?
A distributed database (DDB) is a collection of multiple,
logically interrelated databases distributed over a
computer network.

A distributed database management system (D–DBMS)


is the software that manages the DDB and provides an
access mechanism that makes this distribution
transparent to the users.

Distributed database system (DDBS) = DDB + D–DBMS

Distributed DBMS Page 1.8


What is not a DDBS?

A timesharing computer system


A loosely or tightly coupled multiprocessor
system
A database system which resides at one of the
nodes of a network of computers - this is a
centralized database on a network node

Distributed DBMS Page 1.9


Centralized DBMS on a Network

Site 1
Site 2

Site 5

Communication
Network

Site 4 Site 3

Distributed DBMS Page 1.10


Distributed DBMS Environment

Site 1
Site 2

Site 5
Communication
Network

Site 4 Site 3

Distributed DBMS Page 1.11


Implicit Assumptions
Data stored at a number of sites each site
logically consists of a single processor.
Processors at different sites are interconnected
by a computer network no multiprocessors
parallel database systems
Distributed database is a database, not a
collection of files data logically related as
exhibited in the users’ access patterns
relational data model
D-DBMS is a full-fledged DBMS
not remote file system, not a TP system

Distributed DBMS Page 1.12


Shared-Memory Architecture

P1 Pn M
D

Examples : symmetric multiprocessors (Sequent,


Encore) and some mainframes
(IBM3090, Bull's DPS8)

Distributed DBMS Page 1.13


Shared-Disk Architecture

P1 Pn
D
M1 Mn

Examples : DEC's VAXcluster, IBM's IMS/VS


Data Sharing

Distributed DBMS Page 1.14


Shared-Nothing Architecture

P1 Pn
D1 Dn
M1 Mn

Examples : Teradata's DBC, Tandem, Intel's


Paragon, NCR's 3600 and 3700

Distributed DBMS Page 1.15


Applications

Manufacturing - especially multi-plant


manufacturing
Military command and control
EFT
Corporate MIS
Airlines
Hotel chains
Any organization which has a
decentralized organization structure

Distributed DBMS Page 1.16


Distributed DBMS Promises

Transparent management of distributed,


fragmented, and replicated data

Improved reliability/availability through


distributed transactions

Improved performance

Easier and more economical system expansion

Distributed DBMS Page 1.17


Transparency
Transparency is the separation of the higher level
semantics of a system from the lower level
implementation issues.
Fundamental issue is to provide
data independence
in the distributed environment

Network (distribution) transparency

Replication transparency

Fragmentation transparency
horizontal fragmentation: selection
vertical fragmentation: projection
hybrid

Distributed DBMS Page 1.18


Example
EMP ASG
ENO ENAME TITLE ENO PNO RESP DUR
E1 J. Doe Elect. Eng. E1 P1 Manager 12
E2 M. Smith Syst. Anal. E2 P1 Analyst 24
E3 A. Lee Mech. Eng. E2 P2 Analyst 6
E4 J. Miller Programmer E3 P3 Consultant 10
E5 B. Casey Syst. Anal. E3 P4 Engineer 48
E6 L. Chu Elect. Eng. E4 P2 Programmer 18
E7 R. Davis Mech. Eng. E5 P2 Manager 24
E8 J. Jones Syst. Anal. E6 P4 Manager 48
E7 P3 Engineer 36
E7 P5 Engineer 23
E8 P3 Manager 40

PROJ PAY
PNO PNAME BUDGET TITLE SAL
P1 Instrumentation 150000 Elect. Eng. 40000
P2 Database Develop. 135000 Syst. Anal. 34000
P3 CAD/CAM 250000 Mech. Eng. 27000
P4 Maintenance 310000 Programmer 24000

Distributed DBMS Page 1.19


Transparent Access

SELECT ENAME,SAL
Tokyo
FROM EMP,ASG,PAY
WHERE DUR > 12
Boston Paris
AND EMP.ENO = ASG.ENO
AND PAY.TITLE = EMP.TITLE Paris projects
Paris employees
Communication Paris assignments
Network Boston employees
Boston projects
Boston employees
Boston assignments
Montreal
New
Montreal projects
York
Paris projects
Boston projects New York projects
New York employees with budget > 200000
New York projects Montreal employees
New York assignments Montreal assignments
Distributed DBMS Page 1.20
Distributed Database - User View

Distributed Database

Distributed DBMS Page 1.21


Distributed DBMS - Reality
User
Query
DBMS
Software
User
Application
DBMS
Software

DBMS Communication
Software Subsystem

User
DBMS User Application
Software Query DBMS
Software

User
Query
Distributed DBMS Page 1.22
Potentially Improved Performance

Proximity of data to its points of use


Requires some support for fragmentation and replication

Parallelism in execution
Inter-query parallelism

Intra-query parallelism

Distributed DBMS Page 1.23


Parallelism Requirements

Have as much of the data required by each


application at the site where the application
executes
Full replication

How about updates?


Updates to replicated data requires implementation of
distributed concurrency control and commit protocols

Distributed DBMS Page 1.24


System Expansion

Issue is database scaling

Emergence of microprocessor and workstation


technologies
Demise of Grosh's law

Client-server model of computing

Data communication cost vs telecommunication


cost

Distributed DBMS Page 1.25


Distributed DBMS Issues
Distributed Database Design
how to distribute the database
replicated & non-replicated database distribution
a related problem in directory management

Query Processing
convert user transactions to data manipulation
instructions
optimization problem
min{cost = data transmission + local processing}
general formulation is NP-hard

Distributed DBMS Page 1.26


Distributed DBMS Issues

Concurrency Control
synchronization of concurrent accesses
consistency and isolation of transactions' effects
deadlock management

Reliability
how to make the system resilient to failures
atomicity and durability

Distributed DBMS Page 1.27


Relationship Between
Issues
Directory
Management

Query Distribution
Reliability
Processing Design

Concurrency
Control

Deadlock
Management
Distributed DBMS Page 1.28
Related Issues

Operating System Support


operating system with proper support for database
operations
dichotomy between general purpose processing
requirements and database processing requirements
Open Systems and Interoperability
Distributed Multidatabase Systems
More probable scenario
Parallel issues

Distributed DBMS Page 1.29

You might also like