Distributed Database Management System
0%
Course Title: Distributed Database Management System
Course No: CSIT.424.2
Nature of the Course: Theory + Lab
Semester: 8
Full Marks: 60 + 20 + 20
Pass Marks: 24 + 10 + 10
Credit Hours: 3
Course Description
Course Objectives
Course Contents
1. Introduction
7 hrs
1.4. Promises of DDBSs
- Transparent Management of Distributed and Replicated Data
- Reliability Through Distributed Transactions
- Improved Performance
- Easier System Expansion
1.5. Design Issues
- Distributed Database Design
- Distributed Directory Management
- Distributed Query Processing
- Distributed Concurrency Control
- Distributed Deadlock Management
- Reliability of Distributed DBMS
- Replication
- Relationship among Problems
- Additional Issues
1.6. Distributed DBMS Architecture
- ANSI/SPARC Architecture
- A Generic Centralized DBMS Architecture
- Architectural Models for Distributed DBMSs
- Autonomy
- Distribution
- Heterogeneity
- Architectural Alternatives
- Client/Server Systems
- Peer-to-Peer Systems
- Multidatabase System Architecture
2.2. Distribution Design Issues
- Reasons for Fragmentation
- Fragmentation Alternatives
- Degree of Fragmentation
- Correctness Rules of Fragmentation
- Allocation Alternatives
- Information Requirements
2.3. Fragmentation
- Horizontal Fragmentation
- Vertical Fragmentation
- Hybrid Fragmentation
2.4. Allocation
- Allocation Problem
- Information Requirements
- Allocation Model
- Solution Methods
3.4. Characterization of Query Processors
- Languages
- Types of Optimization
- Optimization Timing
- Statistics
- Decision Sites
- Exploitation of the Network Topology
- Exploitation of Replicated Fragments
- Use of Semijoins
3.5. Layers of Query Processing
- Query Decomposition
- Data Localization
- Global Query Optimization
- Distributed Query Execution
4.1. Definition of a Transaction
- Termination Conditions of Transactions
- Characterization of Transactions
- Formalization of the Transaction Concept
4.2. Properties of Transactions
- Atomicity
- Consistency
- Isolation
- Durability
4.3. Types of Transactions
- Flat Transactions
- Nested Transactions
- Workflows
5.2. Locking-Based Concurrency Control Algorithms
- Centralized 2PL
- Distributed 2PL
5.3. Timestamp-Based Concurrency Control Algorithms
- Basic TO Algorithm
- Conservative TO Algorithm
- Multiversion TO Algorithm
5.5. Deadlock Management
- Deadlock Prevention
- Deadlock Avoidance
- Deadlock Detection and Resolution
6.1. Reliability Concepts and Measures
- System, State, and Failure
- Reliability and Availability
- Mean Time between Failures/Mean Time to Repair
6.2. Failures in Distributed DBMS
- Transaction Failures
- Site (System) Failures
- Media Failures
- Communication Failures
6.3. Local Reliability Protocols
- Architectural Considerations
- Recovery Information
- Execution of LRM Commands
- Checkpointing
- Handling Media Failures
6.4. Distributed Reliability Protocols
- Components of Distributed Reliability Protocols
- Two-Phase Commit Protocol
- Variations of 2PC
6.5. Dealing with Site Failures
- Termination and Recovery Protocols for 2PC
- Three-Phase Commit Protocol
6.6. Network Partitioning
- Centralized Protocols
- Voting-based Protocols
7.1. Parallel Database System Architectures
- Objectives
- Functional Architecture
- Parallel DBMS Architectures
7.4. Load Balancing
- Parallel Execution Problems
- Intra-Operator Load Balancing
- Inter-Operator Load Balancing
- Intra-Query Load Balancing
Laboratory Works
- 1.Laboratory Work
Text Books
- 1.Principles of Distributed Database Systems, Özsu, M. Tamer, Valduriez, Patrick, Third Edition.
Reference Books
- 1.Distributed Database Management Systems: A Practical Approach, Saeed K. Rahimi, Frank S. Haug.
- 2.Distributed Database Systems, Chhanda Ray