Joshua Lockerman, Jose Faleiro, Juno Kim, and Soham Sankaran (Yale University); Daniel J Abadi (University of Maryland); James Aspnes (Yale University); Siddhartha Sen (Microsoft Research); Mahesh Balakrishnan (Yale University / Facebook).
The FuzzyLog is a partially ordered shared log abstraction. Distributed applications can concurrently append to the partial order and play it back. FuzzyLog applications obtain the benefits of an underlying shared log – extracting strong consistency, durability, and failure atomicity in simple ways – without suffering from its drawbacks. By exposing a partial order, the FuzzyLog enables three key capabilities for applications: linear scaling for throughput and capacity (without sacrificing atomicity), weaker consistency guarantees, and tolerance to network partitions.