Learn how data systems really work
The ideas behind the book Designing Data-Intensive Applications, in short lessons: trade-offs, data models, storage engines, encoding, replication and more. A way to learn the concepts a little each day, alongside the book or on its own.
Free, about three minutes a lesson, 29 units. On the web now; the Android app is coming to Google Play.
What you will learn
Trade-offs in data systems
Weigh operational versus analytical, cloud versus self-hosted, one node versus many.
Nonfunctional requirements
Describe performance, reliability, scalability, and maintainability precisely.
Data models and query languages
Pick relational, document, graph, or event models, and query each one.
Storage and retrieval
Know how databases store and find data, for transactions and for analytics.
Encoding and evolution
Encode data so old and new code can keep working together.
Replication
Keep copies of data on many machines, and live with the lag.
How it works
- A short idea first, then quick questions: tap an answer, order lines, sort, match or find the bug.
- Wrong answers come back at the end until they stick.
- Streaks, XP, leagues and races with friends keep the habit going.
- Spaced review brings back what you are about to forget.