⚙️Pro

Advanced Distributed Systems Design

Deep dive into distributed systems internals. Design Dynamo, Cassandra, Kafka, GFS, and more. Covers consensus, replication, partitioning, and fault tolerance.

8 modules 48 lessons ~12h AI voice coach
Start Learning — Pro

7-day free Pro trial included

Course Outline

1

Advanced Distributed Systems Concepts

6 lessons

Master the theoretical foundations of distributed systems: consistency models, consensus algorithms, vector clocks, and gossip protocols.

Introduction to Advanced System Design
Consistency Models: Strong, Eventual & Causal
CAP Theorem & PACELC
Consensus Algorithms: Paxos & Raft
Vector Clocks & Conflict Resolution
Gossip Protocols
2

Designing Amazon Dynamo

6 lessons

Deep dive into the architecture of Amazon's Dynamo: consistent hashing, quorum reads/writes, vector clocks, Merkle trees, and anti-entropy repair.

Dynamo: Requirements & Motivation
Consistent Hashing & Virtual Nodes
Data Replication & Quorum Reads/Writes
Vector Clocks for Conflict Detection
Merkle Trees for Anti-Entropy
Dynamo: Architecture Walkthrough
3

Designing Apache Cassandra

6 lessons

Explore Cassandra's architecture: token ring partitioning, LSM-tree storage with SSTables, Bloom filters, and tunable consistency levels.

Cassandra: Requirements & Data Model
Partitioning & Token Ring
Write Path: Memtable, SSTable & Compaction
Read Path & Bloom Filters
Tunable Consistency Levels
Cassandra: Architecture Walkthrough
4

Designing Apache Kafka

6 lessons

Deep dive into Kafka's architecture: topics, partitions, consumer groups, log-structured storage, replication with leader election, and exactly-once semantics.

Kafka: Requirements & Motivation
Topics, Partitions & Consumer Groups
Replication & Leader Election
Log-Structured Storage Engine
Exactly-Once Semantics
Kafka: Architecture Walkthrough
5

Designing Google File System (GFS)

6 lessons

Explore the Google File System architecture: master-chunk design, chunk placement and replication, write and read flows, and fault tolerance mechanisms.

GFS: Requirements & Motivation
Master-Chunk Architecture
Chunk Placement & Replication
Write & Read Flows
Fault Tolerance & Recovery
GFS: Architecture Walkthrough
6

Designing a Distributed Cache

6 lessons

Design a distributed caching system: cache strategies, consistent hashing for sharding, invalidation patterns, hot key solutions, and complete architecture walkthrough.

Distributed Cache: Requirements & Motivation
Cache Strategies: Write-Through, Write-Behind & Write-Around
Consistent Hashing for Cache Sharding
Cache Invalidation Patterns
Hot Key Solutions
Distributed Cache: Architecture Walkthrough
7

Designing a Distributed Search Engine

6 lessons

Design a distributed search engine: inverted indexes, TF-IDF and BM25 scoring, distributed indexing, real-time ingestion pipelines, and complete Elasticsearch-inspired architecture walkthrough.

Search Engine: Requirements & Problem Space
Inverted Index Design
Distributed Indexing & Sharding
Query Processing & Scoring
Real-time Indexing Pipeline
Search Engine: Architecture Walkthrough
8

Designing a Distributed Task Scheduler

6 lessons

Design a distributed task scheduler: task queues, worker management, failure handling, priority scheduling, and complete architecture walkthrough with comparisons to Celery, Airflow, and Temporal.

Task Scheduler: Requirements & Problem Space
Task Queue Architecture
Worker Management & Load Balancing
Failure Handling & Retries
Priority Queues & Delayed Execution
Task Scheduler: Architecture Walkthrough