Google Cloud Spanner — это распределённая реляционная система управления базами данных, разработанная для работы на глобально распределённых вычислительных инфраструктурах. Она сочетает свойства традиционных реляционных СУБД, такие как поддержка схемы, SQL-запросов и транзакций, с возможностями масштабирования и высокой доступности, характерными для распределённых NoSQL-хранилищ. Spanner предназначена для приложений, требующих согласованности данных, низкой задержки и автоматического управления репликацией и шардингом при росте объёма и географического распределения нагрузки.
Сервис реализует модель согласованности с глобальным порядком транзакций и поддерживает транзакции с гарантией ACID. Для достижения согласованности и согласованной репликации Spanner использует комбинацию технологий распределённого согласования времени и протоколов репликации, что позволяет обеспечить детерминированный порядок операций между узлами даже в масштабах нескольких дата-центров. Управление инфраструктурой, восстановление после сбоев и автоматическое распределение данных по узлам реализованы как управляемые сервисы облачной платформы.
- Реляционная модель: поддержка схемы, таблиц, индексов и запросов на языке SQL; интеграция структурированных данных с распределённым хранилищем.
 - ACID-транзакции: транзакции с атомарностью, согласованностью, изолированностью и долговечностью, обеспечиваемые в распределённой среде.
 - Глобальная согласованность: возможность поддерживать строгий порядок транзакций и консистентные снимки данных для клиентов, расположенных в разных регионах.
 - Автоматический шардинг: масштабирование данных путём автоматического разделения таблиц на сегменты и перераспределения нагрузки без вмешательства пользователя.
 - Синхронная репликация и высокая доступность: репликация данных между узлами и регионами с настройками для устойчивости к сбоям и минимизации потери данных.
 - Управляемый сервис: автоматическое управление кластерами, обновлениями, резервным копированием и восстановлением, а также мониторинг и метрики.
 - Низкая задержка при масштабе: архитектурные оптимизации для поддержания стабильной производительности при увеличении числа узлов и объёма данных.
 - Интеграция с облачными сервисами: взаимодействие с другими компонентами облачной платформы для аутентификации, сетевой безопасности и аналитики.
 - Колонки времени и глобальные снимки: механизмы версионности и чтения консистентных снимков данных по меткам времени для ретроспективного анализа и согласованных чтений.
 - Гибкость конфигурации реплик: варианты размещения реплик и политик согласования в зависимости от требований доступности и задержки.