Storage Systems
Where data actually lives outside a database — browser storage, file systems, caches, and how each one really works.
7
Acts
64
Chapters
GreenMart
The Story
The Index
7 Acts. 64 Chapters. One continuous story.
Storage Isn't One Thing
GreenMart's app has real, everyday problems that have nothing to do with the database at all — and Sarah realizes storage was never just one thing.
What Is Storage?
What Is Storage?
Volatile vs. Persistent Storage
Volatile vs. Persistent Storage
The Memory Hierarchy
The Memory Hierarchy
Latency: From Nanoseconds to Seconds
Latency: From Nanoseconds to Seconds
Capacity
Capacity — How Much Actually Fits
Throughput
Throughput — How Fast Data Moves
IOPS
IOPS — How Many Operations a Second
Three Shapes of Storage
Three Shapes of Storage — Block, File, Object
Choosing Where Data Lives
Choosing Where Data Lives
Storage Inside the Browser
GreenMart's own storefront starts losing carts and settings the moment a customer closes the tab — the browser was quietly storing data all along.
The File System You Didn't Choose
A support ticket about a 'missing' file forces Sarah to actually explain what a file is, underneath the folder icon.
What Is a File?
What Is a File?
Files, Directories & Paths
Files, Directories & Paths
Inodes & File Metadata
Inodes & File Metadata
File Descriptors
File Descriptors
How Files Find Their Blocks
How Files Find Their Blocks
Journaling & Crash Recovery
Journaling & Crash Recovery
Permissions & Ownership
Permissions & Ownership
Hard Links
Hard Links
Symbolic Links
Symbolic Links
Why Delete Doesn't Mean Gone
Why Delete Doesn't Mean Gone
The Data You Don't Ask For Twice
GreenMart's pages keep serving stale prices and old inventory counts — the cache nobody at GreenMart designed on purpose.
What Is a Cache?
What Is a Cache?
Cache Invalidation
Cache Invalidation
TTL & Eviction
TTL & Eviction
LRU, LFU & Other Eviction Strategies
LRU, LFU & Other Eviction Strategies
Write-Through, Write-Back & Write-Around
Write-Through, Write-Back & Write-Around
HTTP Caching
HTTP Caching
ETags & Conditional Requests
ETags & Conditional Requests
CDN & Edge Caching
CDN & Edge Caching
Cache Stampede
Cache Stampede
When Should You Cache?
When Should You Cache?
When One Machine Isn't Enough
GreenMart's product images and receipts outgrow a single machine's disk entirely.
Block Storage
Block Storage — Volumes, Partitions & Virtual Disks
Why Object Storage Exists
Why Object Storage Exists
Objects, Buckets & Keys
Objects, Buckets & Keys
Object Storage vs. File Storage
Object Storage vs. File Storage
Object Storage APIs
Object Storage APIs
Multipart Uploads
Multipart Uploads
Versioning
Versioning
Lifecycle Management
Lifecycle Management
Content-Addressable Storage
Content-Addressable Storage
Replication & Durability
Replication & Durability
Storage Failure & Recovery
Storage Failure & Recovery
Distributed Storage Basics
Distributed Storage Basics
How Data Is Actually Laid Out
Sarah finally asks what every database from GreenMart's last two courses was quietly doing underneath: how does data actually sit on disk?
What Is a Storage Engine?
What Is a Storage Engine?
B-Trees: Data on Disk
B-Trees: Data on Disk
LSM Trees: Writes First
LSM Trees: Writes First
B-Tree vs. LSM Tree
B-Tree vs. LSM Tree
Serialization & Deserialization
Serialization & Deserialization
JSON vs. Binary Formats
JSON vs. Binary Formats
Compression & Storage
Compression & Storage
Choosing a Storage Format
Choosing a Storage Format
Putting Storage to Work
GreenMart's next expansion needs a real storage architecture, not another one-off decision made under pressure.
One Application, Many Storage Systems
One Application, Many Storage Systems
Choosing Storage by Access Pattern
Choosing Storage by Access Pattern
Hot, Warm & Cold Data
Hot, Warm & Cold Data
Storage Cost vs. Performance
Storage Cost vs. Performance
Storage Reliability & Recovery
Storage Reliability & Recovery
Designing a Storage Architecture
Designing a Storage Architecture
GreenMart's Storage Layer
Course Complete