Cosmos DB

By default, every field in each item is automatically indexed, generally providing good performance without tuning to specific query patterns.

Cosmos DB offers two types of indexes: Containers can also enforce unique key constraints to ensure data integrity.

The internal data model described in the previous section is exposed through: The SQL API lets clients create, update and delete containers and items.

Cosmos DB automatically decides how many partitions to spread data across depending on the size and throughput needs.

That mode is still available but only recommended when storage and throughput requirements do not exceed the capacity of one container, or when the built-in partitioning capability does not otherwise meet the application's needs.

Large queries (e.g. aggregations like count) and stored procedure executions can consume hundreds to thousands of RUs depending on the complexity of the operations needed.

In March 2018, Microsoft announced a new multi-master capability for Azure Cosmos DB, allowing multiple regions to serve as write replicas.

The LWW policy relies on timestamps to determine the winning write, while the custom option enables developers to handle conflicts through application-defined rule.

[17] This feature, announced in May 2020,[18] is a fully isolated column store for enabling large scale analytics against operational data in the Azure Cosmos DB, without any impact to its transactional workloads.

This feature addresses the complexity and latency challenges that occur with the traditional ETL pipelines required to have a data repository optimized to execute Online analytical processing by automatically syncing the operational data into a separate column store suitable for large scale analytical queries to be performed in an optimized manner, resulting in improving the latency of such queries.

Gartner Research positions Microsoft as the leader in the Magic Quadrant Operational Database Management Systems in 2016[20] and calls out the unique capabilities of Cosmos DB in their write-up.