After the preceding two sections, one may wonder why any designer would chose a 1-Safe architecture. The only reason is reduced transaction latency. Because in a 1-Safe system, control returns to the application as soon as the active database has completed its log write, transactions complete faster in such systems.
2-Safe Durable systems have the longest latency because completing the transaction requires writing both log records.
2-Safe Received is often seen as the best compromise because transaction latency is less than 2-Safe Durable, and it provides the same degree of data protection in the case of single failures.
However, all these considerations only apply to transactions that modify the data. A 2-Safe Durable architecture has an unexpected advantage when it comes to read activities. Because in a 2-Safe Durable system the two databases are always transactionally identical, applications can read from either and get identical results. This is not true of the other architectures, in which the two databases are not guaranteed to be identical at every moment. This means that if an application contains a mixed read and write workload, 2-Safe durable may be as fast, or even faster than either of the other architectures.
|
Figure 14: Application Throughput Considerations


