Fault tolerance

Fault tolerance is the ability of a system or application to continue operating or providing a service in the presence of hardware or software failures or errors, either by detecting and recovering from the failure or by providing alternative resources or redundancy to prevent system downtime or data loss. In databases, data replication over different servers is a way to avoid data loss when a server crashes.