Cloud Spanner от Google для разрешения споров между реляционными технологиями и NoSQL?


Cloud Spanner — это новое предложение для базы данных как услуги, которая категорически предлагает «реляционное с масштабированием NoSQL». Придет ли Google доминировать на еще одном рынке?

Когда-то существовал только один вид системы управления базами данных, РСУБД, «R» для реляционных. Несмотря на свою стойкость и надежность, у него были свои недостатки; он плохо масштабировался, а реляционная модель, которую он обслуживала, оказалась неадекватной на заре эры больших данных для обработки огромных объемов неструктурированных данных без схемы.

По этой и нескольким другим причинам появилось новое поколение СУБД, способных справиться с лавиной больших данных, основываясь на понятии пары ключ-значение и делая это за счет горизонтального масштабирования. Но для того, чтобы стать универсальным, этому новому поколению систем управления пришлось отказаться от безопасности ACID и удобства SQL, которые являются долгосрочными партнерами реляционной модели.

Конечно, было много попыток связать эти два моста; добавление возможностей SQL в HBase Hadoop через, скажем, Apache Phoenix или предоставление возможностей PostgreSQL JSON, но это все же был компромисс, а не инновации. Fusions, такие как Splice Machine, см. Первая гибридная СУБД с открытым исходным кодом на основе Hadoop и Spark, представляют собой новую попытку объединить лучшие части традиционных систем управления реляционными базами данных и их аналогов NoSQL, что позволяет использовать настоящие СУБД с MVCC и ACID в системах. такие как Hadoop, способный в реальном времени проводить анализ и обновления больших и распределенных объемов данных.

Но теперь пришло время Google получить свою долю пирога на рынке гибридных баз данных. Компания Google утверждает, что с помощью Cloud Spanner разработала:

глобально распределенная служба реляционной базы данных, которая позволяет клиентам есть и есть свой пирог: транзакции ACID и семантика SQL, не отказываясь от горизонтального масштабирования и высокой доступности

Это утверждение, очевидно, должно быть правдой, потому что внутри Cloud Spanner поддерживает многие известные приложения Google, такие как Gmail, Google Фото, Календарь, Android Market и AppEngine, которые доступны широкой публике и когда-то полагались на Бэкэнд Megastore. Кроме того, Google рассматривает возможность коммерциализации платформы, предлагая ее как DBaaS, доступную в аренду, по аналогии с Amazon AWS Aurora или Microsoft Azure DocumentDB, с той разницей, что она работает в собственной частной глобальной сети Google.

Архитектурно Cloud Spanner, хотя и не является хранилищем значений ключей в соответствии со стандартом NoSQL, хотя и напоминает его, не является чисто реляционным. Это скорее полу-реляционный, поднимающий аналогичный язык схемы, поскольку каждая таблица должна иметь упорядоченный набор из одного или нескольких столбцов первичного ключа, что делает ее похожей на хранилище значений ключей:

первичные ключи образуют имя для строки, и каждая таблица определяет отображение столбцов первичного ключа на столбцы без первичного ключа. Строка существует только в том случае, если для ключей строки определено какое-то значение (даже если оно NULL). Применение этой структуры полезно, поскольку позволяет приложениям управлять локализацией данных посредством выбора ключей.

Другой отличительной особенностью Cloud Spanner является использование GPS и атомных часов для координации своих распределенных узлов через TrueTime, сервис, который использует сеть глобально синхронизированных часов для обеспечения согласованной репликации в центрах обработки данных.

Очевидно, что это экосистема, адресованная крупным клиентам, которые полагаются на скоординированные, распределенные, отказоустойчивые ACID-транзакции в глобальной инфраструктурной сети. Это также находит отражение в существующей гибкой модели ценообразования, которая варьируется в зависимости от:

количество узлов Cloud Spanner в вашем проекте.

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

объем используемой пропускной способности сети.

Таким образом, Cloud Spanner продвигает Google как крупного игрока на и без того перегруженный рынок баз данных как услуг; вопрос теперь в том, действительно ли рекламируемые возможности будут иметь такое значение, чтобы поставить Google впереди конкурентов?


Добавить комментарий