How to Write a Distributed Key Value Store in Rust Using CURP Protocol
Offered By: CNCF [Cloud Native Computing Foundation] via YouTube
Course Description
Overview
Learn how to implement a distributed key-value store using Rust and the CURP (Consistent Unordered Replication Protocol) in this 36-minute tutorial. Explore the fundamentals of distributed systems, including traditional consensus protocols like Raft, and dive into the specifics of CURP. Discover key components such as conflict-checked channels and command workers, and understand how CURP achieves consensus. Examine the design of persistent storage layers, comparing B+ Trees and LSM Trees. Address common challenges in testing distributed systems through deterministic simulation, and learn how to integrate madsim for reproducing Heisenberg bugs. Gain practical insights into building robust, cloud-native distributed systems with Rust.
Syllabus
Intro
What is CURP protocol
Traditional Consensus Protocol: Raft
CURP-- Consistent Unordered Replication Protocal
CURP Service Definition
CURP ExternalInterface Definition
Key Component - Conflict Checked Channel and Command Workers
How does conflict check channel work?
How does CURP achieve consensus?
The Design of Persistent Storage Layer
The trade-off in storage engine selection
B+ Tree VS LSM Tree
Common pain points in testing distributed systems
Deterministic Simulation
Deterministic Simulator -- madsim
How does madsim simulate determinism?
How does madsim reproduce heisenberg bugs?
How to integrate madsim into your project?
Taught by
CNCF [Cloud Native Computing Foundation]
Related Courses
The Rust Programming LanguageUdemy Rust for Beginners: Learn Rust in 4 Hours
Udemy Rust For Undergrads
Udemy Take your first steps with Rust
Microsoft via Microsoft Learn Rust Fundamentals
Pluralsight