Transcript slides

Distributed Database
Management Systems
Reading


Farkas
Textbook: Ch. 1, Ch. 3
For next class: Ch. 4
CSCE 824
2
Database Management
System (DBMS)

Collection of
– interrelated data and
– set of programs to access the data


Convenient and efficient processing
of data
Database Application Software
Farkas
CSCE 824
3
Abstraction

View level: different perspectives
– application programs hide irrelevant data

Logical level: data models
– Logical representation of data
– Different approaches: relational,
hierarchical, network, object oriented,
semi-structured, etc.
– Data independence principle

Farkas
Physical level: how data is stored
CSCE 824
4
Motivation for DBMS


Farkas
Integrate related data
Provide centralized and controlled
access to data
CSCE 824
5
Computer Network

Distributed processing:
– Number of autonomous processing
elements that are interconnected by
computer network
– Cooperate to perform their assigned
tasks
Farkas
CSCE 824
6
What to distribute?




Farkas
Processing logic/element
Functions
Data
Control of execution
CSCE 824
7
Why to distribute?



Farkas
Intuition
Reliability
Performance
CSCE 824
8
Distributed Database
Systems

Distributed database:
– Collection of multiple, logically
interrelated databases that are distributed
over a computer network

Distributed DBMS: software
system that
– Permits the management of the
distributed database and
– Makes the distribution transparent to the
user
Farkas
CSCE 824
9
Data Delivery


Data storage and query
processing
Data delivery:
– Delivery mode: push, pull, hybrid
– Frequency: periodic, conditional,
ad-hoc, irregular
– Communication method: unicast,
one-to-many
Farkas
CSCE 824
10
DDBMS Services

Transparent data management
– Distributed, replicated data
– Transparency: network, replica,
fragmentation

Reliable access to data
– Distributed transactions
– Failure atomicity


Improved performance
Flexible expansion
Farkas
CSCE 824
11
Difficulties


Everything that is present in
traditional DBs
Fragmentation and replica
control
– Data retrieval
– Data update


Farkas
Dealing with failures
Synchronization
CSCE 824
12
DDBMS Issues







Farkas
Database design
Directory management
Query processing
Concurrency control
Deadlock management
Reliability
Replication
CSCE 824
13
DDBMS Architecture

Chapter 1.7 (read only)
– Client/server
– P2P
– Multi-database
Farkas
CSCE 824
14
DISTRIBUTED DATABASE
DESIGN
Farkas
CSCE 824
15
Design Issues


Farkas
Placing of data and programs
(DBMS and application)
Network issues
CSCE 824
16
Level of Sharing



No sharing
Data sharing
Data and program sharing
Heterogeneous environment!
Farkas
CSCE 824
17
Access Pattern


Farkas
Static
Dynamic
CSCE 824
18
Level of Knowledge on
Access Behavior


Farkas
Complete information
Partial information
CSCE 824
19
Top-Down Design

Farkas
Figure 3.2
CSCE 824
20
Fragmentation

Why to fragment the data?
– Application views
– Limit replication while increase
availability
– Increased concurrency
Farkas
CSCE 824
21
Fragmentation

Types:
– Horizontal
– Vertical
– Hybrid

Degree:
– From no fragmentation to individual
tuples/attributes
Farkas
CSCE 824
22
Correctness of
Fragmentation
1.
2.
Completeness: FR={R1, …, Rn}
Reconstruction: R=Ri, RiR
1&2: Lossless-join (normalization)
3.
Disjointness:
–
–
Farkas
Horizontal: does not  djRi such that
djRk where ki
Vertical: same as horizontal for nonprimary key attributes
CSCE 824
23
Allocation

Replication or single copy?
– Read-only transactions

Issues: (Figure 3.6)
–
–
–
–

Query processing
Directory management
Concurrency control
Reliability
Real world applications
Farkas
CSCE 824
24
Fragmentation Design

Information need:
– Database information
– Application information
– Communication network
information
– Computer system information
Farkas
CSCE 824
25
Horizontal
Fragmentation


Primary horizontal fragmentation:
defined by selection operation on
the relations of a database
schema, Ri= Fi(R)
Correctness:
– Completeness
– Reconstruction (union)
– Disjointness
Farkas
CSCE 824
26
Vertical Fragmentation


R={R1, …, Rn}, where each Ri (i=1,
…, n) contains a primary key and
some of the attributes in R
More difficult than horizontal
fragmentation – heuristics
– Grouping
– Splitting
Farkas
CSCE 824
27
Vertical Fragmentation

Correctness:
– Completeness
– Reconstruction (join)
– Disjointness
Farkas
CSCE 824
28
Hybrid Fragmentation


Farkas
Horizontal or vertical
fragmentations are not sufficient
the user application requirements
Nested or mixed fragmentation
CSCE 824
29
Data Directory

Global vs. local conceptual
schemas
– How to search?
– Where to store?
– Single vs. multiple copies?
Farkas
CSCE 824
30
Current Research



Allocation: new requirements,
technology, etc.
Where to store the fragments?
Dynamic environment
–
–
–
–
Farkas
Usage pattern
Application characteristics
Network changes
Security
CSCE 824
31
Next Class
Commit Protocols
Farkas
CSCE 824
32