ABSTRACT

Data replication is an age-old technique for tolerating faults, increasing system availability, and reducing latency in data access. Consider the telephone directory that you use at your home, or at work, or while traveling. You may not want to carry it with you because of its bulky size; so you may decide to make multiple copies of it, keeping one for home and one in your car. Even if the copy in your car is stolen the loss is not catastrophic since you can always drive home to get the other copy. However, having an extra copy in the car saves the time to drive home, and therefore reduces the time to access the directory. Recall that the implementation of stable storage (Chapter 14) used data replication on independent disks. Replication is widely used in cache memory, distributed shared memory, distributed file systems, and bulletin boards.