Azure Cosmos DB is Microsoft's globally distributed, multi-model database service for mission-critical applications. Azure Cosmos DB provides turn-key global distribution, elastic scaling of throughput and storage worldwide, single-digit millisecond latencies at the 99th percentile, five well-defined consistency levels, and guaranteed high availability, all backed by industry-leading SLAs. Azure Cosmos DB automatically indexes data without requiring you to deal with schema and index management. It is multi-model and supports document, key-value, graph, and columnar data models.
Azure Cosmos DB provides the Table API for applications that need a key-value store with flexible schema. Azure Table storage SDKs and REST APIs can be used to work with Azure Cosmos DB. You can use Azure Cosmos DB to create tables with high throughput requirements. Azure Cosmos DB supports throughput-optimized tables (informally called "premium tables"), currently in public preview.
You can continue to use Azure Table storage for tables with high storage and lower throughput requirements. Azure Cosmos DB will introduce support for storage-optimized tables in a future update, and existing and new Azure Table storage accounts will be upgraded to Azure Cosmos DB.
Premium and standard Table APIs
If you currently use Azure Table storage, you gain the following benefits by moving to Azure Cosmos DB's "premium table" preview:
|Azure Table Storage||Azure Cosmos DB: Table storage (preview)|
|Latency||Fast, but no upper bounds on latency||Single-digit millisecond latency for reads and writes, backed with <10 ms latency reads and <15 ms latency writes at the 99th percentile, at any scale, anywhere in the world|
|Throughput||Highly scalable, but no dedicated throughput model. Tables have a scalability limit of 20,000 operations/s||Highly scalable with dedicated reserved throughput per table, that is backed by SLAs. Accounts have no upper limit on throughput, and support >10 million operations/s per table|
|Global Distribution||Single region with one optional readable secondary read region for HA. You cannot initiate failover||Turn-key global distribution from one to 30+ regions, Support for automatic and manual failovers at any time, anywhere in the world|
|Indexing||Only primary index on PartitionKey and RowKey. No secondary indexes||Automatic and complete indexing on all properties, no index management|
|Query||Query execution uses index for primary key, and scans otherwise.||Queries can take advantage of automatic indexing on properties for fast query times. Azure Cosmos DB's database engine is capable of supporting aggregates, geo-spatial, and sorting.|
|Consistency||Strong within primary region, Eventual with secondary region||five well-defined consistency levels to trade off availability, latency, throughput, and consistency based on your application needs|
|SLAs||99.9% availability||99.99% availability within a single region, and ability to add more regions for higher availability. Industry-leading comprehensive SLAs on general availability|
How to get started
Here are a few pointers to get you started: