Cloud users have to fine-tune and manually manage every distributed cloud system they deploy, ranging from distributed storage systems to distributed computation systems. Today there are few ways of allowing users to specify their requirements and having the system adapt automatically to meet these, no matter what the workload and environmental behavior. In this talk I will describe our work on incorporating user requirements, specified as SLAs or SLOs (Service Level Agreements/Objectives) into cloud systems. In a storage system like a NoSQL/key-value store, these SLAs/SLOs might specify conflicting latency and consistency requirements. In a computation system like Hadoop, they might entail job priorities and deadlines. Our adaptive query routers and schedulers change the system behavior to meet these SLAs/SLOs at all times. The talk will focus on our work on the probabilistic latency/consistency trade-off (and SLAs/SLOs) for distributed key-value stores. This work also enables us to specify a generalized probabilistic variant of the classical CAP theorem, and to measure how close our implementation is to the achievable envelope. Our implementations of these adaptive systems have been incorporated into Cassandra, Riak, and Hadoop. Besides systems design, predictability in cloud systems can also be achieved via verification and formal model checking.
Muntasir Raihan Rahman is a PhD candidate in Computer Science at the University of Illinois at Urbana-Champaign. He is a member of the Distributed Protocols Research Group (DPRG) led by his advisor Dr. Indranil Gupta. His research interests include distributed systems, big data systems, and cloud systems. He has won the 2014-2015 VMware Graduate Fellowship, Best Paper award at IEEE ICAC 2015, and the 2015-16 UIUC CS Excellence Fellowship. Muntasir has completed research internships at VMware, Microsoft Research, HP Labs, and Xerox Labs. He received a B.Sc. degree in computer science and engineering from Bangladesh University of Engineering and Technology in 2007, and an M. Math degree in computer science from the University of Waterloo in 2010.