StylusDB is a project to learn the inner workings of a key-value store and understanding the bottlenecks that occur and affect the key-value store at a low level, in a distributed environment by implementing one from scratch.
Date | Topic | Session Title | Session/Recording Link |
---|---|---|---|
30-12-2023 | Introduction to Databases: Cover the basics of databases, including types (relational, NoSQL, etc.), database models, and key concepts | What are we doing? | Presentation: https://bit.ly/48zmAGg |
06-01-2024 | Database Design and Modelling: Discuss database design principles, ER models, normalisation, and data integrity. | Code a Minimal SQL DB | https://bit.ly/stylusdb-drive |
15-01-2024 | SQL and NoSQL Systems: Compare and contrast SQL and NoSQL systems, their use cases, strengths, and weaknesses | Code a Minimal SQL DB Pt. II | https://bit.ly/stylusdb-drive |
21-01-2024 | Basics of Distributed Systems: Introduce the principles of distributed computing, challenges, and benefits | 1BRC using StylusDB-SQL - https://lu.ma/r5jqk1aq | TBD |
27-01-2024 | Architecture of Key-Value Stores: Delve into the architecture of key-value stores, including data distribution, indexing, and caching strategies | TBD | TBD |
03-02-2024 | Use Cases and Performance Considerations: Explore common use cases for distributed key-value stores and discuss performance optimisation techniques | TBD | TBD |
10-02-2024 | Fundamentals of Consensus Algorithms: Explain the need for consensus in distributed systems, and introduce basic concepts and terminologies | TBD | TBD |
17-02-2024 | Deep Dive into Raft Algorithm: Provide an in-depth analysis of the Raft consensus algorithm, including its design, operation, and how it ensures consistency and reliability in a distributed environment | TBD | TBD |
24-02-2024 | Comparison with Other Algorithms: Compare Raft with other consensus algorithms like Paxos, highlighting their differences, pros, and cons | TBD | TBD |
02-03-2024 | File Management in Distributed Systems: Discuss how files are managed, stored, and accessed in distributed systems | TBD | TBD |
09-03-2024 | Commit Protocols and Data Integrity: Explain commit protocols such as two-phase commit, and their role in ensuring data integrity and consistency | TBD | TBD |
16-03-2024 | Handling Failures and Data Recovery: Cover strategies for dealing with system failures, data recovery, and ensuring high availability | TBD | TBD |
The cohort is divided into 4 major sections as follows:
A) Database Fundamentals
B) Distributed Systems and Key-Value Stores