Data in a cloud computing system should be highly available. That is, whenever you connect to the system, the data you stored there should be ready to use. The standard mechanism to accomplish this—data replication—involves maintaining multiple copies of each user's data.
By itself, replicating data does not solve the problem, because the copy of data that is available might be stale. To see why, consider a system that maintains three copies of file x: x1, x2, and x3. Suppose x1 and x2 are currently available and x3 is down. If a program updates x, the system writes the update to x1 and x2, but not to x3 because it is down. No problem, since the system still has two correct copies. Next, suppose x1 and x2 fail, and then x3 recovers. Now there is a problem. If a user reads x, the best the system can do is return the value of x3. But that copy is stale—it does not have the latest update.
No entries found