This is the first of two posts on Spanner. This post will focus on what motivated Spanner, how users interact with it and the novel consistency guarantees Spanner provides. The following post will dive into Spanner internals. Hope you enjoy…

In 2012 Google published a paper on a new database it had built named Spanner. Spanner offered a collection of features that no database before it had offered. It was ground breaking. In order to understand the true impact of Spanner and in order to understand the problem it solves, we have to go back in time to the creation…


What problem does it solve?

Let’s imagine you want to build Uber Eats. There are fundamentally two separate concerns you are going to have to address

  1. How do you write the actual business logic? (e.g. how do you charge a credit card, how do you notify a driver, how do you figure out which driver to dispatch)
  2. How do you orchestrate that logic to run reliably in an environment in which dependencies can fail?

It is important to observe that while these concerns can be coupled together, they are logically distinct concerns. …


Introduction

I am a senior software engineer with an interested for large scale distributed systems in the platform/infrastructure space. My current interests really center around databases, streaming platforms, workflow engines, and other systems which at their core are responsible for data management.

I am starting this blog as a place to record my learnings about distributed systems. For the foreseeable future each blog post will center around some interesting technology in industry.

Upcoming Posts

  • Spanner: Highly available, externally consistent, horizontally scalable database from Google.
  • BigTable: This came before Spanner, and was one of the pieces of tech that lead Google to realize they…

Andrew Dawson

Senior software engineer with an interest in building large scale infrastructure systems.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store