Online services distribute and replicate state across geographically diverse data centers and direct user requests to the closest or least loaded site. While effectively ensuring low latency responses, this approach is at odds with maintaining cross-site consistency. In this talk I will describe out three contributions to address this tension. First, we propose RedBlue consistency, which enables blue operations to be fast (and eventually consistent) while the remaining red operations are strongly consistent (and slow).
Second, to make use of fast operation whenever possible and only resort to strong consistency when needed, we identify conditions delineating when operations can be blue and must be red. Third, we introduce a method that increases the space of potential blue operations by breaking them into separate generator and shadow phases. I will also describe a coordination infrastructure called Gemini that offers RedBlue consistency, and report on our experience modifying applications to make use of it.
Rodrigo Rodrigues is an associate professor at the Faculdade de Ciências e Tecnologia (Faculty of Science and Technology) of the Universidade Nova de Lisboa since 2012. Previously, he was a tenure-track faculty at the Max Planck Institute for Software Systems (MPI-SWS), where he led the Dependable Systems Group, and before that he was an assistant professor at the Technical University of Lisbon and researcher at INESC-ID. He received his PhD degree from the Massachusetts Institute of Technology (MIT) in 2005.
During his doctoral studies he was a researcher at MIT’s Computer Science and Artificial Intelligence Laboratory, under the supervision of Prof. Barbara Liskov. He received a Master of Science degree from MIT in 2001, and an undergraduate degree from the Technical University of Lisbon in 1998. He has won several fellowships and awards, including a best paper award at the Symposium on Operating Systems Principles, the flagship conference in computer systems, a special recognition award from MIT’s Department of Electrical Engineering and Computer Science, and an ERC starting grant in 2012.
This lecture is organized by the Distributed Systems Group at the Institute of Information Systems.