Thursday, June 24, 2010

Stout: An Adaptive Interface to Scalable Cloud Storage

I just noticed that SleepServer is not the only UC San Diego computer science paper being presented this week at the 2010 USENIX Annual Technical Conference in Boston.

"Stout: An Adaptive Interface to Scalable Cloud Storage," John C. McCullough, University of California, San Diego; John Dunagan and Alec Wolman, Microsoft Research, Redmond; Alex C. Snoeren, University of California, San Diego.

The abstract is below:

Many of today's applications are delivered as scalable, multi-tier services deployed in large data centers. These services frequently leverage shared, scale-out, key-value storage layers that can deliver low latency under light workloads, but may exhibit significant queuing delay and even dropped requests under high load. Stout is a system that helps these applications adapt to variation in storage-layer performance by treating scalable key-value storage as a shared resource requiring congestion control. Under light workloads, applications using Stout send requests to the store immediately, minimizing delay. Under heavy workloads, Stout automatically batches the application's requests together before sending them to the store, resulting in higher throughput and preventing queuing delay. We show experimentally that Stout's adaptation algorithm converges to an appropriate batch size for workloads that require the batch size to vary by over two orders of magnitude. Compared to a non-adaptive strategy optimized for throughput, Stout delivers over 34x lower latency under light workloads; compared to a non-adaptive strategy optimized for latency, Stout can scale to over 3x as many requests.

No comments: