Proxy providing stronger consistency with Amazon S3 Anirudh Nambiar Nihar Joshi Carnegie Mellon University ABSTRACT A growing number of applications are using the Amazon Simple Storage Service (S3) which is a key-value database in the cloud provided by Amazon. S3 gives access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. While S3 enjoys ubiquitous use because of the said reasons, applications need to be aware of certain shortcomings of S3 and need to add scope to ensure no adverse impact. One such shortcoming is the current inability of S3 to provide read-after-write consistency for all requests. Similarly, S3 has no notion of object-locking which restricts possible use of S3 storage for applications that require certain transaction semantics. We have written a proxy that aims to provide an interface to applications seeking stronger guarantees than what S3 provides. In addition, the proxy provides for a richer set of APIs to clients that require certain transaction semantics for operations on S3 objects. The paper seeks to evaluate the performance of applications that use the proxy as compared to using S3 directly.