Открыть сервис

Global Tables

Global Tables — это распределённая система управления базами данных (СУБД), разработанная компанией Google, предназначенная для обработки аналитических запросов (OLAP) в реальном времени на больших объёмах данных. Система сочетает в себе свойства реляционных баз данных (поддержка SQL и ACID-транзакций) и масштабируемость NoSQL-решений, обеспечивая высокую производительность при работе с терабайтными и петабайтными наборами данных. Global Tables является частью экосистемы Google Cloud Platform (GCP) и доступна в виде облачного сервиса.

История

Разработка Global Tables началась в 2010-х годах в рамках внутреннего проекта Google, направленного на создание универсальной платформы для аналитики, способной обрабатывать данные в реальном времени. Первоначально система использовалась для внутренних нужд компании, таких как обработка данных рекламной сети Google Ads и аналитика пользовательского поведения. В 2017 году Google анонсировала коммерческую версию Global Tables как часть облачного сервиса BigQuery, а в 2021 году выделила её в отдельный продукт под названием Google Cloud Global Tables.

В 2023 году система была интегрирована с другими сервисами Google Cloud, такими как Dataflow и Pub/Sub, что позволило строить полноценные конвейеры данных (data pipelines) без необходимости в дополнительных инструментах. На 2025 год Global Tables используется в крупных корпорациях (например, в финансовом секторе и ритейле) для задач прогнозирования, анализа временных рядов и обработки событийных данных.

Архитектура

Распределённое хранение

Global Tables основана на архитектуре «shared-nothing» (ничего общего), при которой данные распределены по множеству независимых узлов (шардов). Каждый шард хранит подмножество таблицы, а метаданные о распределении управляются централизованным координатором. Это обеспечивает горизонтальное масштабирование: добавление новых узлов увеличивает ёмкость хранения и вычислительную мощность без простоев.

Механизм репликации

Для обеспечения высокой доступности и отказоустойчивости Global Tables использует синхронную репликацию данных между географически распределёнными центрами обработки данных (ЦОД). При записи данные копируются в несколько ЦОД (по умолчанию — в три), что гарантирует сохранность даже при выходе из строя одного из них. Задержка репликации составляет менее 5 миллисекунд для большинства операций.

Обработка запросов

Система поддерживает SQL-запросы с расширениями для аналитики (агрегатные функции, оконные функции, JOIN-операции). Оптимизатор запросов автоматически распределяет нагрузку между шардами, используя параллельное выполнение. Для ускорения работы с часто запрашиваемыми данными применяется кэширование на уровне узлов.

Классификация

Global Tables относится к классу NewSQL-систем, сочетающих реляционную модель с масштабируемостью NoSQL. В отличие от традиционных СУБД (например, PostgreSQL или MySQL), она не поддерживает сложные транзакции с блокировками, но обеспечивает строгую согласованность (strong consistency) для операций чтения и записи в пределах одного шарда. Для кросс-шардовых операций используется модель «согласованность в конечном счёте» (eventual consistency).

Характеристики

Производительность

Совместимость

Безопасность

Применение

Global Tables используется в следующих областях:

Примеры использования

  1. Розничная сеть «Магнит» (Россия) использует Global Tables для анализа покупательского поведения в 20 000 магазинах. Система обрабатывает 500 миллионов записей в день, позволяя прогнозировать спрос на товары с точностью до 85%.
  2. Банк «Тинькофф» (Россия) применяет Global Tables для обнаружения мошеннических операций. Время обработки транзакции составляет менее 100 миллисекунд, что позволяет блокировать подозрительные платежи в реальном времени.

Критика

Несмотря на преимущества, Global Tables имеет ряд ограничений:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →