APIs
Cosmos DB is a wrapper around a number of different database APIs which provides consistent scaling, throughput, flexibility and performance guarantees.
NoSQLMongoDBPostgreSQLCassandraGremlinTable
NoSQL is the "native" Cosmos DB API. The other offerings are all just the cosmos engine with a thin API wrapper around it to support the wire protocol of various open source database engines i.e. allow you to use their existing SDKs.
NoSQL
Document structure. Cutting edge features available here first. Can use SQL to query data.
MongoDB
Document structure. BSON format. Isn't actually Mongo underneath, just conforms to the Mongo specification for querying and inserting so you can use Mongo SDKs.
PostgreSQL
deprecated
Managed service for running PostgreSQL at scale using Citus (open-source) for sharding.
This was the only offering which wasn't just Cosmos underneath an API wrapper. It actually used PostgreSQL as the engine with Citus to make it shardable, which is probably why it was moved its own thing more recently and this API for Comsos was deprecated.
Cassandra
Column-oriented structure.
Gremlin
Graph structure. Data is stored as edges and vertices and users can make graph queries. Good for:
- dynamic data
- complex relations too difficult to model with relational databases
Table
Cosmos version of Azure Table storage for better availability, latency and throughput. Best for transactional scenarios (rather than analytical ones).