As part of the CS @ ILLINOIS Distinguished Lecture Series, Dr. John Ousterhout, creator of the Tcl scripting language and member of the National Academy of Engineering, will present Raft—a new, more intuitive consensus algorithm for distributed systems. The lecture will take place at 4 pm on August 29, in 2405 Siebel Center.
Designing for Understandability: The Raft Consensus Algorithm
Consensus algorithms are the most important algorithms in distributed systems; they allow a collection of machines to work as a coherent group that can provide continuous service even if some of its members fail. Paxos has dominated the discussion of consensus algorithms for the last 25 years, but it is quite difficult to understand and its specification is not complete enough to provide a good foundation for practical implementations. In this talk, I will describe a new consensus algorithm called Raft. Raft is unusual in that we designed it with understandability as the most important goal. This goal led to a different decomposition of the consensus problem that is more intuitive than Paxos and which also provides a better foundation for practical implementations. A user study confirmed that Raft is indeed easier to understand than Paxos.
Bio: John Ousterhout is the VMware Founders Professor of Computer Science at Stanford University. His current research focuses on new software stack layers to allow datacenter applications to take advantage of communication and storage technologies with microsecond-scale latencies. Ousterhout's prior positions include 14 years in industry, where he founded two companies (Scriptics and Electric Cloud), preceded by 14 years as Professor of Computer Science at U.C. Berkeley. He is the creator of the Tcl scripting language and is also well known for his work in distributed operating systems and storage systems. Ousterhout received a BS degree in Physics from Yale University and a PhD in Computer Science from Carnegie Mellon University. He is a member of the National Academy of Engineering and has received numerous awards, including the ACM Software System Award, the ACM Grace Murray Hopper Award, the National Science Foundation Presidential Young Investigator Award, and the U.C. Berkeley Distinguished Teaching Award.