Databases
10 topics in databases.
ACID Transactions
Understanding ACID is essential for choosing between SQL and NoSQL databases. Financial systems require ACID. Social media feeds may not.
SQL vs NoSQL
Choosing the right database is one of the most impactful decisions in system design. The wrong choice leads to painful migrations.
Database Indexes
Indexes are the single most impactful performance optimization for databases. A query that takes 30 seconds without an index can take 1 millisecond with.
Database Sharding
When a single database server cannot handle the data volume or query load, sharding is the solution.
Data Replication
Every production database uses replication. Without it, a single server failure means data loss and downtime.
Database Scaling
The database is almost always the first bottleneck in a growing system. Knowing the scaling playbook — and the order in which to apply techniques — is.
Database Types
Choosing the right database for each component of your system is a core design skill.
Bloom Filters
Bloom filters save expensive disk/network lookups. Before querying a database or cache, check the Bloom filter.
Database Architectures
Understanding database architectures helps you design systems that meet availability, consistency, and performance requirements.
NoSQL Data Modeling
How to model data in NoSQL databases using denormalization, access-pattern-driven design, and practical patterns for document, wide-column, and key-value.