There are multiple architectures that can be used to achieve highly available database services, each differentiated by the levels of uptime they offer. These architectures can be grouped into three main categories:
- Data Replication
- Clustered & Virtualized Systems
- Shared-Nothing, Geographically-Replicated Clusters
As illustrated in the figure below, each of these architectures offers progressively higher levels of uptime, which must be balanced against potentially greater levels of cost and complexity each incurs.
Simply deploying a high availability architecture is not a guarantee of actually delivering HA. In fact, a poorly implemented and maintained shared-nothing cluster could easily deliver lower levels of availability than a simple data replication solution. [Read more...]