Tunable Performance and Consistency Tradeoffs for Geographically Replicated Cloud Services (COLOR)


COLOR (client-oriented layered optimistic replication) is a combination of optimistic and conservative data replication that allows cloud services to be replicated across widely distributed locations without suffering from the latency overhead of strict algorithms, and with quantifiable and controllable tradeoffs between performance and consistency guarantees. The COLOR solution adopts a layered approach to enable optimistic delivery of client messages on top of any existing storage layer that manages the strict replication of the cloud service. When clients may be temporarily exposed to inconsistent states due to replication failures, such inconsistency is made recoverable similar to "optimistic concurrency control" for clients that cache the server state. COLOR supports different numeric parameters to trade the strict consistency for better performance to possibly match Eventual Consistency, while the end-to-end consistency is always guaranteed as the storage layer will never deliver any client messages generated from inconsistent states