You are previewing Distributed Database Systems.
O'Reilly logo
Distributed Database Systems

Book Description

Distributed Database Systems discusses the recent and emerging technologies in the field of distributed database technology. The mainstream areas of distributed database technology, such as distributed database design, distributed DBMS architecture

Table of Contents

  1. Copyright
    1. Dedicated to:
  2. Preface
  3. 1. Overview of Relational DBMS
    1. 1.1. Concepts of Relational Databases
    2. 1.2. Integrity Constraints
    3. 1.3. Normalization
      1. 1.3.1. Functional Dependencies
      2. 1.3.2. Normal Forms
    4. 1.4. Relational Algebra
      1. 1.4.1. Selection Operation
      2. 1.4.2. Projection Operation
      3. 1.4.3. Union Operation
      4. 1.4.4. Set Difference Operation
      5. 1.4.5. Cartesian Product Operation
      6. 1.4.6. Intersection Operation
      7. 1.4.7. Join Operation
      8. 1.4.8. Division Operation
    5. 1.5. Relational Database Management System
    6. Chapter Summary
    7. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  4. 2. Review of Database Systems
    1. 2.1. Evolution of Distributed Database System
    2. 2.2. Overview of Parallel Processing System
      1. 2.2.1. Parallel Databases
      2. 2.2.2. Benefits of Parallel Databases
      3. 2.2.3. Parallel Database Architectures
        1. Shared-memory architecture
        2. Shared-disk architecture
        3. Shared-nothing architecture
        4. Hierarchical architecture
    3. 2.3. Parallel Database Design
      1. 2.3.1. Data Partitioning
        1. Round-robin
        2. Hash partitioning
        3. Range partitioning
    4. Chapter Summary
    5. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  5. 3. Distributed Database Concepts
    1. 3.1. Fundamentals of Distributed Databases
    2. 3.2. Features of a Distributed DBMS
    3. 3.3. Advantages and Disadvantages of Distributed DBMS
    4. 3.4. An Example of Distributed DBMS
    5. 3.5. Homogeneous and Heterogeneous Distributed DBMSs
    6. 3.6. Functions of Distributed DBMS
    7. 3.7. Components of a Distributed DBMS
    8. 3.8. Date’s 12 Objectives for Distributed Database Systems
    9. Chapter Summary
    10. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  6. 4. Overview of Computer Networking
    1. 4.1. Introduction to Networking
    2. 4.2. Types of Computer Networks
    3. 4.3. Communication Schemes
    4. 4.4. Network Topologies
    5. 4.5. The OSI Model
    6. 4.6. Network Protocols
      1. 4.6.1. TCP/IP (Transmission Control Protocol/Internet Protocol)
      2. 4.6.2. SPX/IPX (Sequence Packet Exchange/Internetwork Packet Exchange)
      3. 4.6.3. NetBIOS (Network Basic Input/Output System)
      4. 4.6.4. APPC (Advanced Program-to-Program Communications)
      5. 4.6.5. DECnet
      6. 4.6.6. AppleTalk
      7. 4.6.7. WAP (Wireless Application Protocol)
    7. 4.7. The Internet and the World-Wide Web (WWW)
    8. Chapter Summary
    9. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  7. 5. Distributed Database Design
    1. 5.1. Distributed Database Design Concepts
      1. 5.1.1. Alternative Approaches for Distributed Database Design
    2. 5.2. Objectives of Data Distribution
      1. 5.2.1. Alternative Strategies for Data Allocation
    3. 5.3. Data Fragmentation
      1. 5.3.1. Benefits of Data Fragmentation
      2. 5.3.2. Correctness Rules for Data Fragmentation
      3. 5.3.3. Different Types of Fragmentation
        1. Horizontal fragmentation
        2. Vertical fragmentation
        3. Mixed fragmentation
        4. Derived fragmentation
        5. No fragmentation
    4. 5.4. The Allocation of Fragments
      1. 5.4.1. Measure of Costs and Benefits for Fragment Allocation
        1. Horizontal fragments
        2. Vertical fragments
    5. 5.5. Transparencies in Distributed Database Design
      1. 5.5.1. Data Distribution Transparency
      2. 5.5.2. Transaction Transparency
      3. 5.5.3. Performance Transparency
      4. 5.5.4. DBMS Transparency
    6. Chapter Summary
    7. Exercises
      1. 1. Multiple choice questions
      2. Review Questions
  8. 6. Distributed DBMS Architecture
    1. 6.1. Introduction
    2. 6.2. Client/Server System
      1. 6.2.1. Advantages and Disadvantages of Client/Server System
      2. 6.2.2. Architecture of Client/Server Distributed Systems
      3. 6.2.3. Architectural Alternatives for Client/Server Systems
    3. 6.3. Peer-to-Peer Distributed System
      1. 6.3.1. Reference Architecture of Distributed DBMSs
      2. 6.3.2. Component Architecture of Distributed DBMSs
      3. 6.3.3. Distributed Data Independence
    4. 6.4. Multi-Database System (MDBS)
      1. 6.4.1. Five-Level Schema Architecture of federated MDBS
        1. Reference architecture of tightly coupled federated MDBS
        2. Reference architecture of loosely coupled federated MDBS
    5. Chapter Summary
    6. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  9. 7. Distributed Transaction Management
    1. 7.1. Basic Concepts of Transaction Management
    2. 7.2. ACID Properties of Transactions
    3. 7.3. Objectives of Distributed Transaction Management
    4. 7.4. A Model for Transaction Management in a Distributed System
    5. 7.5. Classification of Transactions
    6. Chapter Summary
    7. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  10. 8. Distributed Concurrency Control
    1. 8.1. Objectives of Distributed Concurrency Control
    2. 8.2. Concurrency Control Anomalies
    3. 8.3. Distributed Serializability
    4. 8.4. Classification of Concurrency Control Techniques
    5. 8.5. Locking-based Concurrency Control Protocols
      1. 8.5.1. Centralized 2PL
      2. 8.5.2. Primary Copy 2PL
      3. 8.5.3. Distributed 2PL
      4. 8.5.4. Majority Locking Protocol
      5. 8.5.5. Biased Protocol
      6. 8.5.6. Quorum Consensus Protocol
    6. 8.6. Timestamp-Based Concurrency Control Protocols
      1. 8.6.1. Basic Timestamp Ordering (TO) Algorithm
      2. 8.6.2. Conservative TO Algorithm
      3. 8.6.3. Multi-version TO Algorithm
    7. 8.7. Optimistic Concurrency Control Technique
    8. Chapter Summary
    9. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  11. 9. Distributed Deadlock Management
    1. 9.1. Introduction to Deadlock
    2. 9.2. Distributed Deadlock Prevention
    3. 9.3. Distributed Deadlock Avoidance
    4. 9.4. Distributed Deadlock Detection and Recovery
      1. 9.4.1. Centralized Deadlock Detection
      2. 9.4.2. Hierarchical Deadlock Detection
      3. 9.4.3. Distributed Deadlock Detection
      4. 9.4.4. False Deadlocks
    5. Chapter Summary
    6. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  12. 10. Distributed Recovery Management
    1. 10.1. Introduction to Recovery Management
    2. 10.2. Failures in a Distributed Database System
    3. 10.3. Steps Followed after a Failure
    4. 10.4. Local Recovery Protocols
      1. 10.4.1. Immediate Modification Technique
      2. 10.4.2. Shadow Paging
      3. 10.4.3. Checkpointing and Cold Restart
    5. 10.5. Distributed Recovery Protocols
      1. 10.5.1. Two-Phase Commit Protocol (2PC)
        1. Termination protocols for 2PC
          1. Coordinator
          2. Participant
        2. Recovery protocols for 2PC
          1. Coordinator failure
          2. Participant failure
        3. Communication schemes for 2PC
      2. 10.5.2. Three-Phase Commit Protocol
        1. Termination protocols for 3PC
          1. Coordinator
          2. Participant
        2. Recovery protocols for 3PC
        3. Election protocol
    6. 10.6. Network Partition
      1. 10.6.1. Pessimistic Protocols
      2. 10.6.2. Optimistic Protocols
    7. Chapter Summary
    8. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  13. 11. Distributed Query Processing
    1. 11.1. Concepts of Query Processing
    2. 11.2. Objectives of Distributed Query Processing
    3. 11.3. Phases in Distributed Query Processing
      1. 11.3.1. Query Decomposition
        1. Normalization
        2. Analysis
        3. Simplification
        4. Query restructuring
      2. 11.3.2. Query Fragmentation
        1. Reduction for horizontal fragmentation
        2. Reduction for vertical fragmentation
        3. Reduction for derived fragmentation
        4. Reduction for mixed fragmentation
      3. 11.3.3. Global Query Optimization
        1. Search space
        2. Optimization strategy
        3. Distributed cost model
          1. Cost functions
          2. Database statistics
          3. Cardinalities of intermediate results
      4. 11.3.4. Local Query Optimization
        1. INGRES algorithm
    4. 11.4. Join Strategies in Fragmented Relations
      1. 11.4.1. Simple Join Strategy
      2. 11.4.2. Semijoin Strategy
    5. 11.5. Global Query Optimization Algorithms
      1. 11.5.1. Distributed INGRES Algorithm
      2. 11.5.2. Distributed R* Algorithm
      3. 11.5.3. SDD-1 Algorithm
    6. Chapter Summary
    7. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  14. 12. Distributed Database Security and Catalog Management
    1. 12.1. Distributed Database Security
    2. 12.2. View Management
      1. 12.2.1. View Updatability
      2. 12.2.2. Views in Distributed DBMS
    3. 12.3. Authorization and Protection
      1. 12.3.1. Centralized Authorization Control
      2. 12.3.2. Distributed Authorization Control
    4. 12.4. Semantic Integrity Constraints
    5. 12.5. Global System Catalog
      1. 12.5.1. Contents of Global System Catalog
      2. 12.5.2. Catalog Management in Distributed Systems
    6. Chapter Summary
    7. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  15. 13. Mobile Databases and Object-Oriented DBMS
    1. 13.1. Mobile Databases
      1. 13.1.1. Mobile DBMS
    2. 13.2. Introduction to Object-Oriented Databases
    3. 13.3. Object-Oriented Database Management Systems
      1. 13.3.1. Features of OODBMS
      2. 13.3.2. Benefits of OODBMS
      3. 13.3.3. Disadvantages of OODBMS
    4. Chapter Summary
    5. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  16. 14. Distributed Database Systems
    1. 14.1. SDD-1 Distributed Database System
    2. 14.2. General Architecture of SDD-1 Database System
      1. 14.2.1. Distributed Concurrency Control in SDD-1
        1. Conflict graph analysis
        2. Timestamp-based protocols
      2. 14.2.2. Distributed Query Processing in SDD-1
        1. Access planning
        2. Distributed execution
      3. 14.2.3. Distributed Reliability and Transaction Commitment in SDD-1
        1. Guaranteed delivery
        2. Transaction control
        3. The write rule
      4. 14.2.4. Catalog Management in SDD-1
    3. 14.3. R* Distributed Database System
    4. 14.4. Architecture of R*
    5. 14.5. Query Processing in R*
    6. 14.6. Transaction Management in R*
      1. 14.6.1. The Presumed Abort Protocol
      2. 14.6.2. The Presumed Commit Protocol
    7. Chapter Summary
    8. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  17. 15. Data Warehousing and Data Mining
    1. 15.1. Concepts of Data Warehousing
      1. 15.1.1. Benefits of Data warehousing
      2. 15.1.2. Problems in Data Warehousing
      3. 15.1.3. Data Warehouses and OLTP Systems
    2. 15.2. Data Warehousing Architecture
      1. 15.2.1. Operational Data Source
      2. 15.2.2. Load Manager
      3. 15.2.3. Query Manager
      4. 15.2.4. Warehouse Manager
      5. 15.2.5. Detailed Data
      6. 15.2.6. Summarized Data
      7. 15.2.7. Archive/Backup Data
      8. 15.2.8. Metadata
      9. 15.2.9. End-User Access Tools
      10. 15.2.10. Data Warehouse Background Processes
    3. 15.3. Data Warehouse Schema
      1. 15.3.1. Star Schema
      2. 15.3.2. Snowflake Schema
      3. 15.3.3. Fact Constellation Schema
    4. 15.4. Data Marts
    5. 15.5. Online Analytical Processing
      1. 15.5.1. OLAP Tools
    6. 15.6. Introduction to Data Mining
      1. 15.6.1. Knowledge Discovery in Database (KDD) Vs. Data Mining
    7. 15.7. Data Mining Techniques
      1. 15.7.1. Predictive Modeling
      2. 15.7.2. Clustering
      3. 15.7.3. Link Analysis
      4. 15.7.4. Deviation Detection
    8. Chapter Summary
    9. Exercises
      1. Multiple Choice Questions
      2. Review Questions
  18. Solved Examples of B.Tech, M.Tech and M.C.A Examinations
  19. Bibliography