Today’s applications are required to be highly responsive and always online. To achieve low latency and high availability, instances of these applications need to be deployed in data centers that are close to their users. Applications need to respond in real-time to large changes and make this data available to users in milliseconds.
Azure Cosmos DB is Microsoft's globally distributed, multi-model database service. With a click of a button, Cosmos DB enables you to elastically and independently scale throughput and storage across any number of Azure regions worldwide. You can elastically scale throughput and storage, and take advantage of fast, single-digit-millisecond data access using your favorite API.
Cosmos DB provides comprehensive service level agreements (SLAs) for throughput, latency, availability, and consistency guarantees, something no other database service offers.
Databases Supported in CosmosDB
Azure Cosmos DB is Microsoft's globally distributed, multi-model database service. With a click of a button, Cosmos DB enables you to elastically and independently scale throughput and storage across any number of Azure regions worldwide. You can elastically scale throughput and storage, and take advantage of fast, single-digit-millisecond data access using your favorite API.
Cosmos DB provides comprehensive service level agreements (SLAs) for throughput, latency, availability, and consistency guarantees, something no other database service offers.
Databases Supported in CosmosDB
- SQL
- MongoDB
- Cassandra
- Azure Tables
- Gremlin (Graph)
Key Benefits
- Global Distribution of Data: Cosmos DB enables you to build highly responsive and highly available applications worldwide. Cosmos DB transparently replicates your data wherever your users are, so your users can interact with a replica of the data that is closest to them.Cosmos DB allows you to add or remove any of the Azure regions to your Cosmos account at any time, with a click of a button. Cosmos DB will seamlessly replicate your data to all the regions associated with your Cosmos account while your application continues to be highly available.
- Highly Available: 99.999%
- Scalable Throughput and Storage
- Low Latency
It guarantees less than 10 ms response time throughout the world - Five consistency choices
- Strong: This means that reads are guaranteed to see the most recent write
Clients get the old value from all read regions until and unless a new committed value to write region synced to all read regions.
After the point of time when it confirmed from all regions that value gets synced clients start to receive the new value.
Ensures order of data client receives - Bounded staleness: Most frequently chosen by globally distributed applications expecting low write latencies but total global order guarantees
All read regions get synced at a specified time lag, till that time all-regions provide old value, after the specified point of time all regions provide new value.
Ensures order of data client receives - Session: Session consistency is most widely used consistency level both for single region as well as, globally distributed applications
In the case of the distributed DB across regions, the client gets the value whatever present on the DB of the region it has started the session.
When a new value updated in write region client of any read region will get that value when that will sync in clients DB region(where the client made his session).
However, a client who committed new value will start to get new value from the time he committed
Ensures order of data client receives - Consistent Prefix: Guarantees that reads never see out of order writes
High performance like eventual
Ensures order of data client receives - Eventual: The weakest form of consistency wherein a client may get the values which are older than the ones it had seen before, over time
Does not ensure order of data client receives - Schema & Index management
Keeping database schema and indexes in-sync with an application’s schema is especially painful for globally distributed apps. With Cosmos DB, you do not need to deal with schema or index management. - Battle Tested: Microsoft's mission-critical applications use it
- Global Presence: 54+ regions globally
- Secured: Data is encrypted at rest and in motion
- Fully Managed: You no need to worry about managing deployments to multi-data centers its taken care by Azure with licensing you opt.
- Sparks: You can run Spark directly on data stored in Cosmos DB. This capability allows you to do low-latency, operational analytics at global scale without impacting transactional workloads operating directly against Cosmos DB




