Distributed Database Management Systems
Reading Textbook: Ch. 1, Ch. 3 For next class: Ch. 4 Farkas CSCE 824
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
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 Physical level: how data is stored Farkas CSCE 824
Motivation for DBMS Integrate related data Provide centralized and controlled access to data Farkas CSCE 824
Computer Network Distributed processing: Number of autonomous processing elements that are interconnected by computer network Cooperate to perform their assigned tasks Farkas CSCE 824
What to distribute? Processing logic/element Functions Data Control of execution Farkas CSCE 824
Why to distribute? Intuition Reliability Performance Farkas CSCE 824
Distributed Database Systems 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
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
DDBMS Services Transparent data management Reliable access to data Distributed, replicated data Transparency: network, replica, fragmentation Reliable access to data Distributed transactions Failure atomicity Improved performance Flexible expansion Farkas CSCE 824
Difficulties Everything that is present in traditional DBs Fragmentation and replica control Data retrieval Data update Dealing with failures Synchronization Farkas CSCE 824
DDBMS Issues Database design Directory management Query processing Concurrency control Deadlock management Reliability Replication Farkas CSCE 824
DDBMS Architecture Chapter 1.7 (read only) Client/server P2P Multi-database Farkas CSCE 824
Distributed Database Design Farkas CSCE 824
Design Issues Placing of data and programs (DBMS and application) Network issues Farkas CSCE 824
Level of Sharing Heterogeneous environment! No sharing Data sharing Data and program sharing Heterogeneous environment! Farkas CSCE 824
Access Pattern Static Dynamic Farkas CSCE 824
Level of Knowledge on Access Behavior Complete information Partial information Farkas CSCE 824
Top-Down Design Figure 3.2 Farkas CSCE 824
Fragmentation Why to fragment the data? Application views Limit replication while increase availability Increased concurrency Farkas CSCE 824
Fragmentation Types: Degree: Horizontal Vertical Hybrid From no fragmentation to individual tuples/attributes Farkas CSCE 824
Correctness of Fragmentation Completeness: FR={R1, …, Rn} Reconstruction: R=Ri, RiR Disjointness: Horizontal: does not djRi such that djRk where ki Vertical: same as horizontal for non-primary key attributes 1&2: Lossless-join (normalization) Farkas CSCE 824
Allocation Replication or single copy? Issues: (Figure 3.6) Read-only transactions Issues: (Figure 3.6) Query processing Directory management Concurrency control Reliability Real world applications Farkas CSCE 824
Fragmentation Design Information need: Database information Application information Communication network information Computer system information Farkas CSCE 824
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
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
Vertical Fragmentation Correctness: Completeness Reconstruction (join) Disjointness Farkas CSCE 824
Hybrid Fragmentation Horizontal or vertical fragmentations are not sufficient the user application requirements Nested or mixed fragmentation Farkas CSCE 824
Data Directory Global vs. local conceptual schemas How to search? Where to store? Single vs. multiple copies? Farkas CSCE 824
Current Research Allocation: new requirements, technology, etc. Where to store the fragments? Dynamic environment Usage pattern Application characteristics Network changes Security Farkas CSCE 824
Next Class Commit Protocols Farkas CSCE 824