Azure Cosmos DB
Azure Cosmos DB is a multi-model NoSQL database management system.
- Data as partitioned set of documents
 - Supports JavaScript Object Notation (JSON)
 - Supports APIs
- SQL, Table, MongoDB, Cassandra, Gremlin
 
 - Highly scalable
 - Single-digit millisecond response times • Automatic and instant scalability,
 - Guarantee speed at any scale
 
Advantages of Cosmos DB
- High availability of 99.999%
 - Replication across regions
 - 10-ms latencies for reads/writes
 - Certified for compliance standards
 - Encrypted at rest and in motion
 
Use Cases of Cosmos DB
- Frequent bursts of large activities (IoT)
 - Single digit latency (gaming)
 - Elastic scaled up or down (eCommerce)
 
Core components
- Database account
 - Database
 - Container
 - Items
 
Tools
- Azure Portal
 - PowerShell / Azure CLI
 - ARM Templates
 - APIs and SDKs
 - .NET, Java, Spring, Node.js, Python SDKs
 - MongoDB, Table, Gremlin, Cassandra API
 
Key management tasks
- Choose the most appropriate data model
 - Plan capacity and costs
 - Choose the right throughput mode
 - Configure global distribution
 
General recommendations
- Use the latest SDK
 - Log metrics by using the Azure portal
 - Run your app in the same Azure region as your Azure Cosmos DB account, whenever possible.
 - Availability issues due to lack of resources on your client machine