DISTRIBUTED DATABASE SYSTEMS:
RELIABILITY, LIABILITY, AND FAILURES
AZEEM KHAN 70122951
ABDUL KAREEM 70122734
UMER IMRAN 70120919
INTRODUCTION
• What is a Distributed Database System (DBMS)?
• A database spread across multiple physical locations, connected by a
network.
• Ensures scalability, reliability, and fault tolerance.
• Importance of Distribution Systems:
• Handle large-scale data efficiently across various locations.
• Improve performance by reducing latency and increasing data availability.
• Enable fault recovery and disaster management for uninterrupted
operations.
• Support modern applications requiring high availability and responsiveness.
CHARACTERISTICS OF DISTRIBUTED
DATABASE SYSTEMS
• Key Features:
• Decentralization: Data managed independently across nodes.
• Transparency:
• Location Transparency: Users don’t need to know data location.
• Replication Transparency: Data copies are managed automatically.
• Scalability: Easily add more nodes to manage increasing data volumes.
• Advantages:
• Enhanced performance by processing queries closer to users.
• Better fault isolation.
• Cost-effective storage and processing.
DISTRIBUTION SYSTEM RELIABILITY
• Definition:
• The ability of the system to provide uninterrupted and accurate service.
• Key Factors:
• Replication: Duplicate data across nodes to enhance fault tolerance.
• Fault Tolerance: Systems recover from hardware/software failures.
• Consistency Models:
• Strong Consistency ensures all nodes see the same data immediately.
• Eventual Consistency allows temporary differences, achieving consistency over time.
• Techniques for Reliability:
• Distributed transactions (e.g., Two-Phase Commit) ensure atomicity.
• Quorum-based systems maintain consistency during updates.
• Failover strategies reduce downtime by automatically switching to backup nodes.
LIABILITY IN DISTRIBUTED SYSTEMS
• Definition:
• The responsibility or risks associated with system failures.
• Key Concerns:
• Data Integrity: Protecting against data corruption during transmission or storage.
• Data Privacy: Ensuring data is secure against unauthorized access.
• Service-Level Agreements (SLAs): Defining acceptable performance and uptime.
• Metrics for Liability:
• Mean Time Between Failures (MTBF): Average time between system failures.
• Mean Time to Recovery (MTTR): Average time to restore system functionality.
• Error rates and system downtime as indicators of reliability.
SYSTEM STATE FAILURE
• What is a System State Failure?
• Occurs when the system is unable to maintain its operational state, leading to disruptions.
• Causes:
• Network Partitioning: Nodes fail to communicate due to connectivity issues.
• Hardware Failures: Disk crashes, power outages, or server malfunctions.
• Software Bugs: Errors in query execution, transaction management, or algorithms.
• Data Corruption: Issues with data integrity during replication or storage.
• Failure Detection and Mitigation:
• Regular health checks and heartbeats to monitor system status.
• Rollback mechanisms (e.g., transaction logs) to undo partial changes.
• Regular snapshots and backups to recover data during failures.
LABILITY AND FAILURE OF DBMS
• Lability:
• Refers to the sensitivity or instability of the system under changes or stress.
• Common Issues:
• Crashes due to sudden workload spikes or traffic surges.
• Failures during schema updates, causing system downtime.
• Version mismatches in distributed nodes affecting compatibility.
• Failure Handling:
• Recovery Mechanisms:
• Write-ahead logging ensures changes are recorded before execution.
• Checkpointing saves system state periodically to expedite recovery.
• High Availability:
• Leader election mechanisms enable quick failover to backup nodes.
• Data replication across nodes ensures continuous availability.
• Error Detection:
• Enforcing ACID properties to guarantee reliable transactions.
SECURITY IN DISTRIBUTED DATABASE
SYSTEMS
• Challenges:
• Ensuring data confidentiality during transmission and storage.
• Protecting against unauthorized access and cyber threats.
• Techniques:
• Encryption for secure data storage and communication.
• Authentication protocols to verify user identities.
• Access control mechanisms to restrict sensitive operations.
SCALABILITY AND PERFORMANCE
OPTIMIZATION
• Scalability:
• Horizontal scaling by adding more nodes to the network.
• Vertical scaling by upgrading hardware capabilities.
• Performance Enhancements:
• Indexing and partitioning for faster query processing.
• Load balancing to distribute workload evenly.
• Caching frequently accessed data to reduce response times.
CASE STUDIES
• Real-World Examples:
• Google Spanner: A global-scale distributed database with strong
consistency.
• Amazon DynamoDB: Focuses on availability and partition tolerance.
• Apache Cassandra: Designed for high availability and eventual consistency.
• Lessons Learned:
• Trade-offs between consistency, availability, and partition tolerance (CAP
theorem).
• Importance of robust failure recovery mechanisms.
Q&A
Feel free to ask any questions
Thank you