Fault tolerance relies on specialized hardware to detect a hardware fault and instantaneously switch to a redundant hardware component whether the failed component is a processor, memory board, power supply, I/O subsystem, or storage subsystem. The fault tolerant model does not address software failures, by far the most common reason for downtime.
High availability views availability not as a series of replicated physical components, but rather as a set of system-wide, shared resources that cooperate to guarantee essential services. High availability combines software with industry-standard hardware to minimize downtime by quickly restoring essential services when a system, component, or application fails. While not instantaneous, services are restored rapidly, often in less than a minute.
The difference between fault tolerance and high availability is that a fault tolerant environment has no service interruption but a significantly higher cost, while a highly available environment has a minimal service interruption. Many sites are willing to absorb a small amount of downtime with high availability rather than pay the much higher cost of providing fault tolerance. Additionally, in most highly available configurations, the backup processors are available for use during normal operation. High availability systems are an excellent solution for applications that must be restored quickly and can withstand a short interruption should a failure occur. A few industries have time-critical applications and cannot withstand even a few seconds of downtime. However, many other industries can withstand small periods of time when their database is unavailable. For those industries, SAMP can provide the necessary continuity of service without total redundancy.