We use analytics cookies.We use cookies to analyze site traffic and improve your experience.
Loading...
System Design Masterclass · Reliability Resilience
Free preview: the first 2 parts of this 7-part lesson.
Already bought the course? Sign in to read the whole lesson.
this lesson is part of
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design courseread the rest of this lesson in
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design coursein Reliability Resilience
This lesson is part of the full System Design Masterclass. Unlock it along with 769 other lessons for a one-time payment.
One-time payment by card or PayPal
Get Lifetime AccessOne-time payment: UPI, card or netbanking
Get Lifetime Access18 Foundation lessons are free, no payment needed. Try them now
It is easy and good
“It is really nice and good Please join the course”
Incremental backups are small but fragile. Full backups are reliable but expensive. Differential backups sit between the two, giving you faster restores than incrementals and smaller files than fulls.
Stripe discovered this during a 2019 architecture review. They had been running incremental backups for five years because the storage cost was roughly half that of differentials. When they measured actual restore time under simulated disaster load, rebuilding a Tier-0 database from a six-day incremental chain took 90 minutes longer than restoring from a full plus one differential. At their cost of downtime, that 90 minutes was worth more than a year of the storage savings. They switched.
The simplicity advantage is real. A differential restore always needs exactly two files: the last full and the latest differential. No chain walking, no dependency tracking, no ordering bugs at 3am. That predictability is its own form of reliability.
A differential backup captures all blocks that changed since the last full backup, not since the last backup of any type. This means Monday's differential is small, but by Friday it contains the accumulated changes of the entire week.
| Property | Differential Backup |
|---|---|
| What it copies | All blocks changed since the last full |
| Storage per run | Grows daily as changes accumulate |
| Restore requires | Only the full plus the latest differential |
| Restore complexity | Two steps: load full, overlay differential |
| Typical frequency | Daily, paired with weekly fulls |
| Creation speed | Moderate, reads all changed pages since last full |
| Recovery speed | Fast, always exactly two files to apply |
The critical difference from incrementals: Monday's differential captures Monday's changes. Tuesday's differential captures Monday's changes plus Tuesday's changes. Wednesday's captures Monday through Wednesday. Each differential is self-contained relative to the full. There is no chain to break.