4.6
Advanced
20h
Updated 2 months ago
System Design Deep Dive: Real-World Distributed Systems
Ready to become a System Design pro? Unlock the world’s largest distributed systems, including file systems, data processing systems, and databases from hyperscalers like Google, Meta, and Amazon.
This course deep dives into how large, real-world systems are built and operated to meet strict service-level agreements. You’ll learn the building blocks of a modern system design by picking and combining the right pieces and understanding their trade-offs.
You’ll learn about some great systems from hyperscalers such as Google, Facebook, and Amazon. This course has hand-picked seminal work in system design that has stood the test of time and is grounded on strong principles. You will learn all these principles and see them in action in real-world systems.
After taking this course, you will be able to solve various system design interview problems. You will have a deeper knowledge of an outage of your favorite app and will be able to understand their event post-mortem reports. This course will set your system design standards so that you can emulate similar success in your endeavors.
This course deep dives into how large, real-world systems are built and operated to meet strict service-level agreements. You’ll...Show More
WHAT YOU'LL LEARN
Working knowledge of building large-scale systems
Ability to evaluate common system design trade-offs
Ability to map interview questions and on-job design tasks to well-known systems
Familiarity with the complexity of real-world systems behind a seemingly simple system
Understanding of large cloud service providers hosted in geographically dispersed data centers
Working knowledge of building large-scale systems
Show more
TAKEAWAY SKILLS
Content
1.
Prologue
1 Lessons
Get familiar with core system design principles, case studies, and critical evaluation techniques.
2.
File Systems
1 Lessons
Look at the role and evolution of distributed file systems for scalable data management.
3.
Google File System (GFS)
11 Lessons
Examine the Google File System's design for scalability, performance, and fault tolerance in distributed environments.
4.
Google Colossus File System
3 Lessons
Break down the steps to Colossus's scalability, low-latency, and enhanced control in data management.
5.
Facebook's Tectonic File System
8 Lessons
Consolidate storage resources and ensure scalability, efficiency, and performance isolation in advanced systems.
6.
Databases
1 Lessons
Investigate the evolution and trade-offs in distributed database systems like Bigtable, Megastore, and Spanner.
7.
Google Bigtable
7 Lessons
Piece together the parts of Google's Bigtable, focusing on its data model, architecture, and design refinements.
8.
Google Megastore
6 Lessons
Learn how to use Megastore for scalable, reliable, and ACID-compliant cloud storage.
9.
Google Spanner
9 Lessons
Look at Google Spanner’s unique combination of SQL consistency, NoSQL scalability, and global performance.
10.
Key-value Stores
1 Lessons
Examine key-value stores' role in distributed systems and their foundational impact on NoSQL databases.
11.
Many-core Key-value Store
5 Lessons
Break down the steps to design an efficient, power-saving many-core key-value store system
12.
Scaling Memcache
7 Lessons
Solve problems in scaling Memcache, managing data replication, performance optimization, and consistency.
13.
SILT
12 Lessons
Investigate optimizing key-value stores for efficient resource use, low latency, and scalability.
14.
Amazon DynamoDB
8 Lessons
Build on DynamoDB's scalability, flexible schemas, and robust high availability mechanisms.
15.
Concurrency Management
1 Lessons
Get familiar with managing concurrency using locks and service systems for operational consistency.
16.
Two-phase Locking (2PL)
3 Lessons
Unpack the core of Two-Phase Locking (2PL), ensuring serializability while addressing deadlocks and performance issues.
17.
Google Chubby Locking Service
8 Lessons
Examine Chubby's innovative, robust design for distributed systems, enhancing fault tolerance, replication, and client coordination.
18.
ZooKeeper
5 Lessons
Break down complex ideas of ZooKeeper's architecture, primitives, and performance in distributed systems.
19.
Big Data Processing: Batch to Stream Processing
1 Lessons
Take a closer look at big data systems like MapReduce, Spark, and Kafka.
20.
MapReduce
8 Lessons
See how it works to streamline parallel data processing, fault tolerance, and scalability using MapReduce.
21.
Spark
10 Lessons
Master the steps to leverage Spark's in-memory computation for scalable, low-latency data processing.
22.
Kafka
8 Lessons
Learn how to use Kafka for efficient, scalable, and reliable real-time data streaming.
23.
Consensus
1 Lessons
Look at essential consensus algorithms for fault-tolerant distributed systems design.
24.
Understanding Consensus: Two Generals, FLP, & Byzantine Generals
4 Lessons
Examine consensus challenges in distributed systems, including the Two Generals, FLP, and Byzantine Generals problems.
25.
Two-phase Commit
4 Lessons
Grasp the fundamentals of the Two-Phase Commit protocol for ensuring distributed transaction consistency.
26.
State Machine Replication
10 Lessons
Take a closer look at replicating state machines for fault tolerance, coordinated requests, and fault-tolerant outputs.
27.
Paxos
6 Lessons
See how Paxos maintains consensus in distributed systems, addressing safety, liveness, and fault tolerance.
28.
Raft
8 Lessons
Piece together the parts of the Raft algorithm, ensuring consistent, reliable distributed systems.
29.
Epilogue
1 Lessons
Stay updated on system design, apply knowledge in real-world scenarios, and continue learning.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Developed by MAANG Engineers
Trusted by 2.8 million developers working at companies
"It really gave me a perspective on how to think and design that scale for Billion users. The AI bots give you a real feeling of interacting with a mentor."
Desh S
Huawei Technologies
"The interactive coding environments provided by Educative allowed me to practice concepts in real-time. This hands-on approach was crucial for reinforcing my learning and gaining confidence in applying new skills."
Sumit S
Learner
"It has helped me in achieving goals and about the course. Educative has helped sharing a real time experience in day-to-day life."
Jayanth H
Learner
"Educative's real power lies in text based content which helps you remain focussed and avoid distraction. Amazing stuff for learners of all ages."
Desh S
Huawei Technologies
Hands-on Learning Powered by AI
See how Educative uses AI to make your learning more immersive than ever before.
AI Prompt
Code Feedback
Explain with AI
AI Code Mentor
Free Resources
cheatsheet
cheatsheet
cheatsheet
blog
guide