Как подчеркивают в Microsoft, ее облачная СУБД Cosmos DB обеспечивает простоту глобального масштабирования приложений. Сервис позволяет хранить данные, тиражируя их в любые регионы, обслуживаемые публичным облаком Azure.
Cosmos — это новое название DocumentDB, управляемой нереляционной СУБД в виде сервиса, которую Microsoft предлагает начиная с 2015 года. Ключевая особенность Cosmos DB в том, что разработчики могут выбрать любую из пяти моделей согласованности, от «сильной» до «согласованности в конечном счете».
Сервис позволяет сохранять данные и осуществлять к ним доступ с помощью различных интерфейсов программирования, в том числе DocumentDB, MongoDB, SQL, Gremlin и Azure Tables. В Microsoft гарантируют доступность данных на уровне 99,99%, а также обещают, что для 99,99% пользователей время отклика СУБД в регионах с тиражируемыми копиями базы будет меньше 10 мс. Аналогичные гарантии даются в отношении согласованности и пропускной способности СУБД.
Глобально-распределенные базы данных наподобие Cosmos способствуют росту популярности облаков. Когда мобильное приложение физически выполняется далеко от центра обработки данных, его запросы обслуживаются с большей задержкой, а Cosmos DB позволит разработчикам использовать глобальность сети центров обработки данных Microsoft, чтобы лучше обслуживать приложения в разных странах мира.
Новшество поможет корпорации конкурировать с другими операторами публичных облаков, например с Amazon Web Services и Google. У этих обеих компаний есть свои управляемые сервисы СУБД, но Cosmos DB выделяется набором гарантий, глобальным масштабом и возможностью выбрать уровень согласованности.
Для сильной согласованности предоставляется гарантия получения самых свежих данных за счет некоторого снижения производительности — этот вариант может подойти для приложений, используемых в финансовой сфере. Однако пользователи, выбравшие сильную согласованность, лишаются возможности тиражировать базы данных на несколько регионов.
На противоположном конце шкалы — согласованность в конечном счете. При выборе этого варианта СУБД будет реагировать быстрее, но данные не всегда могут быть самыми свежими. На таком уровне согласованности обеспечивается глобальное тиражирование и предлагается самый низкий тариф в расчете на операцию считывания данных.
Два этих крайних варианта выбрали меньше 10% всех пользователей DocumentDB. Чаще отдают предпочтение промежуточным уровням, например предсказуемой согласованности на протяжении сеанса. Такой вариант дает пользователю возможность считать из базы записанные им туда данные и годится для любых приложений, работающих в режиме клиентских сеансов.
Есть еще уровень с ограниченным устареванием, когда операции считывания могут отставать от операций записи на период времени или число версий не более чем задано разработчиком. А согласованность префиксов дает гарантию, что при операциях чтения данные всегда возвращаются в том порядке, в каком были записаны, но эти данные не обязательно самые свежие.
В Microsoft сделали и другие объявления, касающиеся СУБД. Так, корпорация предложила MySQL и PostgreSQL в виде управляемых сервисов, избавляющих разработчиков от установки заплат, масштабирования и административных задач. Кроме того, представлен сервис Data Migration, помогающий переносить в облако данные из СУБД Microsoft SQL Server и Oracle.