liveBook · Manning

Availability nines

As explained in 100 SQL Server Mistakes and How to Avoid Them

The number of nines is an availability notation that expresses uptime as a percentage with a corresponding count of nines.

A common mistake is accepting an application owner's availability target without translating it into downtime and cost. “Four nines” means 99.99% availability; “five nines” means 99.999%. Five nines permits only 6 seconds of weekly downtime, so even a brief network problem can consume the allowance. section 13.2

Table 13.1 Levels of availability (view table figure)

Level of availability

Downtime per week

Downtime per month

99%

1 hour, 40 minutes, 48 seconds

7 hours, 18 minutes, 17 seconds

99.9%

10 minutes, 4 seconds

43 minutes, 49 seconds

99.99%

1 minute

4 minutes, 23 seconds

99.999%

6 seconds

26 seconds

Use the availability table to convert percentage targets into allowable downtime: 99.9% permits 43 minutes, 49 seconds monthly; 99.99% permits 4 minutes, 23 seconds; 99.999% permits 26 seconds. section 13.2

The five-nines request

A five-nines target may sound reasonable until its infrastructure consequences are visible. Achieving it can require costly local and geographically dispersed redundancy with redundant private links. A stand-alone server on a major public cloud platform was described as receiving only a 95% monthly uptime SLA at the time of writing. section 13.2

Apply the metric as a cost-and-requirements check:

  • Calculate tangible and intangible downtime costs before selecting an HA/DR solution. section 13.2
  • Reject designs whose redundant solution costs more than the application's downtime, and test DR rather than assuming synchronization guarantees failover. section 13.6

How 100 SQL Server Mistakes and How to Avoid Them covers it

How deep it goes
Defines percentage notation, quantifies downtime, and compares costs, but stops short of implementation procedures.
Examples
Uses 99.9%, 99.99%, and 99.999% targets, downtime tables, Azure's stand-alone-server SLA, and HA/DR cost comparisons.
What it assumes
Assumes application requirements and downtime costs can be assessed, while teaching availability percentages and nines from their practical meaning.
What you can do after
Evaluate availability targets by translating them into downtime, infrastructure expense, and DR testing requirements.
How it connects
Connects availability nines with high availability, disaster recovery, availability groups, and failover clustering.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of 100 SQL Server Mistakes and How to Avoid Them. The section links point to the parts of the book it draws on.