Spanner работает следующим образом:
  - Данные в Spanner хранятся в полуреляционных таблицах.                                                                          habr.com                       Все данные имеют версию — временную метку подтверждения записи этих данных.                                                                          habr.com                      
  - Система поддерживает распределённые транзакции.                                                                          habr.com                       Узел, инициирующий транзакцию, автоматически становится её координатором и уведомляет все узлы-участники, содержащие реплику изменяемых данных.                                                                          www.computerra.ru                      
  - Для обеспечения согласованности данных используется специальный программный интерфейс TrueTime API.                                                                          www.computerra.ru                                                                                               habr.com                       В его основе лежит концепция единого времени, действующего в рамках всего хранилища Spanner, распределённого по нескольким дата-центрам.                                                                          www.computerra.ru                      
  - Глобальное время в Spanner распределено.                                                                          www.computerra.ru                       В составе каждого ЦОДа выделяются специальные серверы, именуемые «мастерами времени» (Time Master Devices — TMD).                                                                          www.computerra.ru                       Большинство из них получает сигналы точного времени от спутниковой системы GPS, а для надёжности есть особые экземпляры, которые называются «мастерами Армагеддона» (Armageddon Masters).                                                                          www.computerra.ru                       Все сервера TMD постоянно синхронизируют время, общаясь друг с другом с помощью специального сервиса timeslave.                                                                          www.computerra.ru                      
  - Каждый из узлов реализует транзакцию (запись изменений в журнал redolog и выполнение изменений данных в оперативной памяти) независимо от других участников, но зафиксировать её участники могут лишь по команде координатора.                                                                          www.computerra.ru                      
  - Координатор передаёт команду и рассылку всем участникам общей временной метки изменённых данных, единой для всех реплик.                                                                          www.computerra.ru                       При этом координатор следит, чтобы значение этой временной метки не превысило границу интервала, то есть находилось в рамках общего глобального времени.                                                                          www.computerra.ru                      
  
 Если хотя бы один из узлов не успеет отрапортовать о готовности к фиксации в отведённый временной интервал, координатор откатит выполнение транзакции и не даст команду на её фиксацию узлам-участникам, которые тоже будут вынуждены выполнить откат.                                                                          www.computerra.ru                       После этого попытка выполнения транзакции повторится.                                                                          www.computerra.ru