Today's cloud computing is fueled by distributed software systems for storage (e.g., NoSQL databases), batch processing (e.g., Hadoop), and real-time processing (e.g., Storm). While deployments of these distributed systems are widespread, they lack predictability. Deployers/administrators often have to hand-tune deployments to achieve desired latencies and consistencies, meet critical job deadlines, etc. We describe some of our work in imbuing these distributed systems with predictability. This includes the ability to support service level agreements/objectives (SLAs/SLOs), to support multiple tenants (thus lowering TCO), and to scale out/in seamlessly. Our work spans and makes contributions to NoSQL databases (Cassandra, Riak), batch processing systems (Hadoop, graph processing systems), and stream processing systems (Storm). These problems are challenging and involve deep research projects, but offer the benefit of being immediately applicable to real world deployments.
Indranil Gupta (Indy) works on large-scale distributed systems with a focus on software systems for datacenters and cloud computing systems. He leads the Distributed Protocols Research Group, and is an Associate Professor in the Department of Computer Science at the University of Illinois at Urbana-Champaign. He received his PhD from Cornell University in 2004, and his bachelors degree from Indian Institute of Technology Madras (Chennai) in 1998. He has worked at Google, Microsoft Research, and IBM Research. Indy has served as program co-chair for several leading conferences in distributed systems. Indy received the NSF CAREER award in 2005, and best paper awards at IC2E 2016, ICAC 2015, and BigMine 2012.
Best Paper Award Sponsor: