Mock Distributed Database
University Projects #Distributed Computing#Databases
NOTEClick this link to view the code on GitHub.
Overview
A distributed database system demonstrating data consistency across multiple worker nodes using a central coordinator and the two-phase commit protocol. Implements the classic distributed systems challenge of maintaining ACID properties across network boundaries.
Key Concepts
- Implemented two-phase commit (2PC) protocol for distributed transactions
- Built coordinator-worker architecture with clear separation of concerns
- Created client interface supporting GET, SET, and database verification commands
- Developed consistency verification to ensure all workers maintain identical state
- Developed stress testing commands (rapidset, multiset) for consistency validation
- Handled worker timeout and failure scenarios gracefully
Technologies
Python, Socket Programming, Two-Phase Commit, Distributed Systems, JSON Protocol, Coordinator-Worker Pattern