Корпорация Microsoft продолжает активно развивать свою облачную платформу Azure, корректируя на ходу отдельные важные моменты, но не общую стратегию. Об этом свидетельствует и недавний выпуск предварительной ознакомительной версии (Community Technology Preview, CTP) онлайнового сервиса БД SQL Azure Database. Несмотря на то что Microsoft и в ходе представления указанного сервиса на конференции Professional Developer Conference (PDC '2008), и сегодня настойчиво подчеркивает его тесную связь с технологиями своей флагманской СУБД SQL Server, знак равенства между ними ставить пока рано. Но конечная цель именно такова.
Напомним, что в октябре прошлого года на PDC '2008 Microsoft представила облачный сервис для работы с данными SQL Services, одним из компонентов которого был сервис БД SQL Data Services. В июле 2009-го названия указанных сервисов были изменены соответственно на SQL Azure и SQL Azure Database. Представители корпорации поспешили заверить сообщество своих пользователей в том, что речь идет только о ребрендинге, который не затрагивает содержательную сторону проекта. Тем не менее за прошедший год концепция SQL Azure Database претерпела заметные изменения.
Дело в том, что сначала предполагалось строить SQL Data Services на основе модели Authority-Container-Entity (ACE), которая в отличие от реляционной не предполагает наличия схемы БД и не закрепляет жестко структуру таблиц и типы данных в записях. Хотя в ACE есть определенное сходство с реляционной моделью (аналогом экземпляра БД является Authority, таблицы — Container и записи — Entity), различия между ними весьма велики. Первоначальный выбор мотивировался большей гибкостью модели ACE, позволяющей разработчикам создавать собственные контейнеры с наборами данных, определять необходимые сущности (“Клиент”, “Заказ” и пр.), которые впоследствии можно будет легко модифицировать.
Однако изучив реакцию самих разработчиков, которые жаловались на то, что им пришлось бы писать две существенно различающиеся версии приложений БД для облачного и локального развертывания, а также терять инвестиции, уже вложенные в подготовку сотрудников, приобретение инструментов и создание прикладных систем, в Microsoft решили вернуться к реляционной модели. Выпущенный в середине августа CTP-релиз SQL Azure Database поддерживает язык Transact-SQL (в том числе и на уровне хранимых процедур) и протокол TDS (Tabular Data Stream). Для доступа к данным можно применять общепринятые программные интерфейсы ODBC, OLE DB, ADO.NET и PHP. При этом ранее анонсированная модель ACE в SQL Azure поддерживаться не будет.
Данный шаг Microsoft следует признать весьма своевременным и разумным: ведь облачная платформа Azure призвана поддерживать концепцию “софт плюс сервис”, в рамках которой к облачному сервису реляционной БД могут обращаться исполняемые на площадках клиентов приложения, которые были написаны в свое время на основе реляционной модели данных, применяемой, в частности, в стандартной версии СУБД Microsoft SQL Server. Более того, заказчики могут параллельно использовать базы данных, размещенные и на собственной площадке, и в облаке, производя их синхронизацию, резервирование и масштабирование. В отличие от традиционного хостинга БД, в рамках которого заботы об инсталляции, конфигурировании, масштабировании, резервном копировании, администрировании, установке обновлений и катастрофоустойчивости лежат на клиенте, сервис SQL Azure Database, предоставляемый из дата-центров Microsoft, включает в себя все указанные сопутствующие услуги. В дальнейшем в набор SQL Azure планируется включить сервисы генерации отчетов, аналитической обработки, ETL-загрузки данных из внешних источников и синхронизации с БД мобильных устройств.
Несмотря на то, что в основе SQL Azure лежат технологии SQL Server, нынешний релиз облачной платформы, как отмечают представители Microsoft, далеко не в полной мере поддерживает всю функциональность флагманской СУБД корпорации и является лишь первым шагом в этом направлении.
Обнародованы предварительные расценки на использование облачных сервисов SQL Azure. Так, за редакцию Web Edition, в которой размер БД не должен превышать 1 Гб, в месяц придется платить 9,99 долл., а за Business Edition (до 10 Гб) — 99,99 долл. Впрочем, для отечественных заказчиков экономическая сторона имеет пока только теоретический интерес: в число нескольких десятков стран, где облачная платформа Windows Azure начнет поддерживаться в нынешнем или будущем году, Россия не входит. О причинах можно только гадать. Утешает лишь то, что в одной компании с нами состоит и такая мощная в экономическом отношении страна, как Китай.