By now, everybody should be aware of Jeff Dean’s Numbers Everyone Should Know:
| L1 cache reference |
0.5 ns |
| Branch mispredict |
5 ns |
| L2 cache reference |
7 ns |
| Mutex lock/unlock |
100 ns |
| Main memory reference |
100 ns |
| Compress 1K bytes with Zippy |
10,000 ns |
| Send 2K bytes over 1 Gbps network |
20,000 ns |
| Read 1 MB sequentially from memory |
250,000 ns |
| Round trip within same datacenter |
500,000 ns |
| Disk seek |
10,000,000 ns |
| Read 1 MB sequentially from network |
10,000,000 ns |
| Read 1 MB sequentially from disk |
30,000,000 ns |
| Send packet CA->Netherlands->CA |
150,000,000 ns |
But there are some additional numbers that should be readily available at the front of your mind:
| Uptime Percentage |
Downtime (per year) |
| 99% |
87.6 hours |
| 99.9% |
8.76 hours |
| 99.99% |
52.56 minutes |
| 99.999% (Five Nines) |
5.26 minutes |
| 99.9999% |
31.5 seconds |
| 99.99999% (Seven Nines) |
3 seconds |
For whatever reason, these numbers tend to surprise people. An additional consideration when deciding your high availability needs is that with each additional Nine, the cost of implementation and ongoing maintenance rises exponentially!