Reliability vs Availability vs Durability (Up ≠ Right) (3:30)

  1. 0:00 Your system is up. But is it correct?
  2. 0:12 Up, but wrong
  3. 0:31 Availability vs reliability
  4. 0:48 Up, but unreliable
  5. 1:10 Measuring reliability
  6. 1:29 Durability
  7. 1:51 Example: Amazon S3
  8. 2:16 Different goals, different tools
  9. 2:38 Recap + interview questions
  10. 3:02 Free notes + what's next

Lesson 11: Reliability, Availability and Durability

Roadmap

You are in System Design Interview Prep, Track 01, Core Fundamentals: lesson 11 of 19 (up is not the same as right). It builds on Lesson 10: Availability. Next comes Lesson 12: Scalability.

These are the written notes for the lesson's video. Prefer paper? The same notes are a free, printable PDF: download SD-A-011.pdf.

Concept

Key idea

Availability is being up, reliability is being correct over time, and durability is never losing acknowledged data; a system can be fully up and still wrong.

Explanation

Three different questions

A reliable system must also be available, but an available system is not automatically reliable.

Figure 1. A reliable system must also be available, but an available system is not automatically reliable.

Up, but unreliable

Your banking app opens instantly and every request returns 200 OK, but the balance is wrong. The system is available, not reliable. Common ways this happens:

  • Serving stale data from a broken or never-invalidated cache.
  • Wrong prices after a bad deploy or config change.
  • Silently dropping writes (a full queue, an ignored error).
  • Returning 200 OK with an error message inside the body.

Uptime monitoring can be all green while users get wrong answers.

Figure 2. Uptime monitoring can be all green while users get wrong answers.

Measuring reliability

Not just “is it up?” but “is it right?”:

  • Error rates and failed requests, including errors hidden in 200 responses.
  • Time between failures (MTBF) for correctness incidents, not only outages.
  • Correctness checks: reconcile totals (orders vs payments), validate responses end to end, run synthetic transactions.

Durability: does the data survive?

Durability belongs to storage: once a write is acknowledged, it must never be lost. It's not about reaching the data right now; it's about the data still existing. You get it with replication across disks and zones, checksums to detect corruption, and backups you actually restore from in tests.

Example

Amazon S3: different targets for different properties. S3 Standard is designed for 99.999999999% durability (eleven nines): store 10 million objects and you might lose one about once every 10,000 years. But it's designed for 99.99% availability: occasionally you can't reach a file, yet it's almost certainly still there.

Tools for each property

Property Main tools
Availability Redundancy, health checks, fast failover, removing single points of failure
Reliability Testing, input validation, idempotent operations, safe deploys (canaries), monitoring correctness, not just uptime
Durability Replication across zones, write-ahead logs, checksums, backups, tested restores

Key terms

Term Meaning
Availability the system answers
Reliability the answers are correct, over time
Durability acknowledged data survives
Idempotent safe to retry
Checksum detects corrupted data
Restore test proving backups actually work

Interview questions

Each question is tagged by kind: Basic (definitions), Scenario (apply it to a system) and Tricky (the follow-ups interviewers use to go deeper). Answer out loud before you open the answer.

Interview

Can a system be highly available but unreliable? (Basic)

What a strong answer covers

Yes. It can be up and fast while returning wrong or stale data, dropping writes or hiding errors inside 200 responses.

Interview

What is durability? (Basic)

What a strong answer covers

The guarantee that acknowledged data is never lost, achieved with replication, checksums and tested backups.

Interview

How is durability different from availability? (Basic)

What a strong answer covers

Availability: can I reach the data now? Durability: does the data still exist? S3 has 11 nines of durability but 4 nines of availability.

Interview

How would you detect that an e-commerce site is up but wrong? (Scenario)

What a strong answer covers

Reconcile orders against payments and inventory, run synthetic purchases end to end, alert on business metrics (e.g. orders per minute dropping), and track errors inside responses.

Interview

Design storage so an acknowledged order is never lost. (Scenario)

What a strong answer covers

Write to a database that replicates synchronously to another zone (or a quorum) before acknowledging, keep a write-ahead log, take regular backups and restore-test them.

Interview

A retry charged a customer twice. Which property failed, and how do you fix it? (Scenario)

What a strong answer covers

Reliability (correctness). Make the payment API idempotent with an idempotency key, so a retried request returns the first result instead of charging again.

Interview

Do backups give durability? (Tricky)

What a strong answer covers

Only if they're recent, stored elsewhere, uncorrupted and restorable. Untested backups often fail when needed; replication alone doesn't protect against accidental deletes or bad writes.

Interview

Is replication enough for durability? (Tricky)

What a strong answer covers

It protects against losing a disk or a zone, but it also copies mistakes instantly: a bad delete or corruption replicates too. You still need point-in-time backups.

Common mistakes & troubleshooting

  • Treating 99.99% uptime as “reliable”.
  • Backups that were never restored in a test.
  • Acknowledging a write before it's safely stored.
  • Monitoring only process health, not response correctness.

Free PDF notes

Download these notes as a printable PDF, with every diagram: SD-A-011.pdf. All Phase 1 notes in one file: Phase 1, Core Fundamentals (PDF).

Next

Continue with Lesson 12: Scalability.