Have you ever wanted a distributed, highly-available database that provided ordered, transactional semantics? With the release of Google Spanner to the public, Eric Brewer discussed the approach they took to achieve this goal, but it is only available via Google Cloud Platform. Similar semantics can be found via FaunaDB, a database created to solve these very problems with the ideas of Daniel Abadi and others via the Calvin paper. In this talk, we will discuss the theories behind Calvin, as well as the consistency/availability tradeoffs made in the face of partitions, as well as how we are planning to use it at Starbucks in our distributed service architecture.
Jamie Allen is the Director of Engineering for the Unified Commerce Project at Starbucks, leading all backend service development in support of our strategic customer-facing business goals. Previously, Jamie was the Senior Director of Global Solutions Architects, and previously head of Global Services, for Typesafe/Lightbend. Jamie has been a Scala developer for 9 years, and is the author of Effective Akka and co-author of Reactive Design Patterns.