Durability and availability

When designing data storage systems, it is important to distinguish between the properties of availability and durability. Availability is a measure of the probability that the system is able to accept reads and writes at any given point in time. Durability is a measure of the probability that once a write has been accepted (in PostgreSQL, this means a successful transaction commit), that information will not be lost. All real systems must pick a compromise between availability, durability, performance, and cost.

For a simple example, we can consider a cluster consisting of two database servers. One is running as the primary server, accepting writes from our application. The other one is running as a standby, replicating ...

Get PostgreSQL Replication - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.