Компания Google представила сервис баз данных, который она намерена предложить пользователям своих публичных облачных сервисов, чтобы управлять критически важными для них продуктами.

Новый сервис Cloud Spanner с полным набором необходимых средств управления базами данных сочетает в себе согласованность транзакций традиционных СУБД с масштабируемостью и производительностью баз данных NoSQL. Он построен на основе тех же самых систем, которые обслуживают собственную внутреннюю базу данных Google Spanner.

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

Система Cloud Spanner проектировалась в качестве управляемого сервиса, лишенного ограничений существующих решений. Помимо всего прочего, это означает, что Google будет управлять оборудованием, программным обеспечением и реплицировать контент баз данных, которые могут распределяться между несколькими ЦОД.

«Сервис окажется полезным компаниям, которым нужно обеспечивать согласованность своих глобальных баз данных в течение миллисекунд», — пояснил директор Gartner по исследованиям Ник Хойдекер. Он считает, что ощутимый выигрыш от Cloud Spanner может быть получен в сфере финансовых услуг и рекламы.

При этом компаниям придется переносить существующие приложения, что сопряжено с определенными трудностями. По словам менеджера по продукту Cloud Spanner Дипти Шриваставы, Google совместно с партнерами намерена помочь клиентам справиться с такой задачей.

Сервис Cloud Spanner вырос из проекта, начавшегося в 2007 году, когда группа сотрудников Google поставила перед собой цель покончить с проблемой выбора между NoSQL и традиционными СУБД. В 2012 году был опубликован документ, описывающий СУБД Spanner, в которой фигурировал целый ряд новых технологий, предусматривающих в том числе и использование в дата-центрах атомных часов и часов GPS для обеспечения согласованности времени.

Технология Spanner уже прошла «проверку боем», управляя сервисами AdWords и Google Play; по свидетельству Google, она дала возможность обслуживать десятки миллионов запросов в секунду

Технология Spanner применялась для управления сервисами AdWords и Google Play. По свидетельству компании, она позволяла обслуживать десятки миллионов запросов в секунду.

Возможности Cloud Spanner были положительно оценены Питером Баккумом, возглавляющим проект создания платформы Quizlet. Компания, занимающаяся образовательным программным обеспечением, предлагает студентам популярный набор исследовательских инструментов для оценки того, как лучше масштабировать инфраструктуру баз данных.

В Quizlet изучали Cloud Spanner еще на этапе закрытого альфа-тестирования и планируют использовать этот сервис в качестве замены существующему набору баз данных MySQL. Рефакторинг приложений Quizlet для использования Cloud Spanner потребует дополнительной работы, но, по словам Баккума, это решение представляется предпочтительным из всех возможных вариантов модернизации.

Популярность Cloud Spanner может возрасти и благодаря позиции Google на облачном рынке. Несмотря на активное предложение новых возможностей и улучшение своих сервисов в целях привлечения новых клиентов, Google пока уступает по популярности Amazon Web Services и Microsoft Azure.

Чтобы использовать Cloud Spanner, нужно перенести данные на облачную платформу Google и создать приложения, которые будут обращаться к этим данным.

«Cloud Spanner не просто программное обеспечение, — указал Хойдекер. — Это объединение программного обеспечения и оборудования в форме атомных часов в ЦОД Google, а также невероятно устойчивая сеть, связывающая ЦОД компании друг с другом».