Гаечный ключ (база данных)

Облачный распределенный сервис СУБД SQL
Стенд Cloud Spanner на саммите Google Cloud Summit

Spanner — это распределенная служба управления и хранения баз данных SQL , разработанная Google . [1] Она предоставляет такие функции, как глобальные транзакции, строго согласованные чтения, автоматическая многосайтовая репликация и отказоустойчивость. Spanner используется в Google F1 , базе данных для рекламного бизнеса Google Ads , а также Gmail и Google Photos. [2] [3]

Функции

Spanner хранит большие объемы изменяемых структурированных данных. Spanner позволяет пользователям выполнять произвольные запросы с использованием SQL с реляционными данными, сохраняя при этом сильную согласованность и высокую доступность для этих данных с синхронной репликацией.

Основные возможности Spanner:

  • Транзакции можно применять к строкам, столбцам, таблицам и базам данных в рамках вселенной Spanner.
  • Клиенты могут контролировать репликацию и размещение данных с помощью автоматической многосайтовой репликации и отказоустойчивости.
  • Репликация синхронная и строго последовательная.
  • Чтения строго согласованы, а данные версионируются, чтобы обеспечить возможность чтения устаревших данных: клиенты могут читать предыдущие версии данных с учетом окон сборки мусора.
  • Поддерживает собственный интерфейс SQL для чтения и записи данных.

История

Spanner был впервые описан в 2012 году для внутренних центров обработки данных Google . [4]

SQL-возможности Spanner были добавлены в 2017 году и задокументированы в документе SIGMOD 2017. [5] Он стал доступен как часть Google Cloud Platform в 2017 году под названием «Cloud Spanner». [6]

Архитектура

Spanner использует алгоритм Paxos в своей работе по сегментированию (разделению) данных на сотни серверов. [1] Он активно использует аппаратную синхронизацию часов с использованием часов GPS и атомных часов для обеспечения глобальной согласованности . [1] TrueTime — это торговая марка распределенной облачной инфраструктуры Google, которая предоставляет Spanner возможность генерировать монотонно увеличивающиеся временные метки в центрах обработки данных по всему миру. [7]

Система управления базами данных (СУБД) F1 ​​SQL от Google создана на основе Spanner [2] , заменив пользовательский вариант MySQL от Google . [8]

Ссылки

  1. ^ abc Корбетт и др. 2012.
  2. ^ ab Шут и др. 2012.
  3. ^ «Анонсируем обновления ценовой эффективности Cloud Spanner».
  4. ^ Кларк, Джек (18 сентября 2012 г.). «Google представляет Spanner — технологию баз данных, способную охватить всю планету». ZDNet . Получено 4 августа 2021 г.
  5. Spanner: Становление SQL-системы. 9 мая 2017 г. С. 331–343. doi :10.1145/3035918.3056103. ISBN 9781450341974. S2CID  3055672.
  6. ^ Шривастава, Дипти (14 февраля 2017 г.). «Представляем Cloud Spanner: глобальную службу баз данных для критически важных приложений». Блог Google Cloud . Получено 4 августа 2021 г.
  7. ^ "Cloud Spanner: TrueTime и внешняя согласованность". Google Cloud . Получено 24.11.2020 .
  8. ^ Шут и др. 2012, стр. 19: «Резюме: мы перенесли большой и критически важный пакет приложений из MySQL в F1».

Библиография

  • Corbett, James C; Dean, Jeffrey ; Epstein, Michael; Fikes, Andrew; Frost, Christopher; Furman, JJ; Ghemawat, Sanjay ; Gubarev, Андрей; Heiser, Christopher; Hochschild, Peter; Hsieh, Wilson; Kanthak, Sebastian; Kogan, Eugene; Li, Hongyi; Lloyd, Alexander; Melnik, Sergey; Mwaura, David; Nagle, David; Quinlan, Sean; Rao, Rajesh; Rolig, Lindsay; Saito, Yasushi; Szymaniak, Michal; Taylor, Christopher; Wang, Ruth; Woodford, Dale (2012). Spanner: Глобально распределенная база данных Google (PDF) . 10-й симпозиум USENIX по проектированию и внедрению операционных систем (OSDI'12). Голливуд, Калифорния . Получено 18 сентября 2012 г.{{cite conference}}: CS1 maint: ref дублирует по умолчанию ( ссылка ).
  • Дейт, Кристофер «Крис» Дж. (2004), «6. Отношения, часть II. Реляционная модель», Введение в системы баз данных (8-е изд.), Addison Wesley, ISBN 978-0-32119784-9.
  • Шут, Джеффри «Джефф»; Оанча, Мирча; Эллнер, Стефан; Хэнди, Бенджамин «Бен»; Роллинз, Эрик; Сэмвел, Барт; Вингралек, Радек; Уипки, Чад; Чэнь, Синь; Йегерленер, Бит; Литтлфилд, Кайл; Тонг, Феникс (2012), «F1 — отказоустойчивая распределенная СУРБД, поддерживающая рекламный бизнес Google», Исследование (презентация), SIGMOD{{citation}}: CS1 maint: location missing publisher (link).
  • Шут, Джеффри «Джефф»; Оанча, Мирча; Эллнер, Стефан; Хэнди, Бенджамин «Бен»; Роллинз, Эрик; Сэмвел, Барт; Вингралек, Радек; Уипки, Чад; Рэй, Ян; Апте, Химани; Литтлфилд, Кайл; Цислевич, Джон (2013), «F1: Распределенная база данных SQL, которая масштабируется», Исследование (презентация), Международная конференция по очень большим базам данных{{citation}}: CS1 maint: location missing publisher (link).

Дальнейшее чтение

  • Кларк, Джек (30 августа 2013 г.). «Google возвращается в будущее с базой данных SQL F1». www.theregister.com .
Retrieved from "https://en.wikipedia.org/w/index.php?title=Spanner_(database)&oldid=1252365549"