DocumentDB автоматически индексирует содержимое всех документов, допускает обработку запросов в реальном времени, полностью поддерживает требования ACID к транзакциям (атомарность, согласованность, изолированность, надёжность). Система очень похожа на MongoDB как эффективное хранилище JSON-документов с богатыми API для запросов, в то же время выгодно отличается от MongoDB по масштабируемости и надёжности работы, глубокой интеграции JavaScript, поддержке RESTful API, асинхронных запросов и др.
Как и MongoDB, DocumentDB представляет собой иерархию баз данных, коллекций и документов.
Запросы на SQL-подобном синтаксисе в DocumentDB обрабатываются как есть, без необходимости выбирать индексы.
Вот как выглядят SQL-подобные запросы в DocumentDB.
SELECT *
FROM teams T
WHERE T.city = 'Melbourne'
SELECT T
FROM teams T
JOIN person IN T.members
WHERE person.age >= 18
SELECT ApplySalesTax(item, 'Australia')
FROM item in cart.items
DocumentDB исполняет скрипты JavaScript внутри базы данных. Различные хранимые в базе процедуры, функции и триггеры можно писать на JavaScript (скрипты лежат в коллекциях для последующего выполнения). Вся логика JavaScript исполняется в рамках гарантированной ACID-надёжности с изоляцией снэпшотов. Во время исполнения, если скрипт выбрасывает exception, вся транзакция отменяется.
Клиентские библиотеки для работы с хранилищем DocumentDB:
Стоимость использования DocumentDB в облаке Azure измеряется в юнитах (capacity units) и начинается от $22,50 за юнит (учитывая скидку 50% на пробный период). Один юнит — это 10 ГБ места на SSD-диске, 2000 операций чтения в секунду, 500 операций в секунду вставки/замены/удаления, 1000 запросов в секунду к коллекции с возвращением одного документа.
This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.
Комментариев нет:
Отправить комментарий