Azure SQL API vs Azure Mongo API

Now I have spent more than 6 months with Cosmos DB project. I can give my opinion on this question.

Azure Cosmos DB offer the same feature with SQL API vs Mongo API, hence you can't compare by feature.

Reason using Mongo API in Cosmos DB

  1. If you have existing Mongo DB database and you want to migrate on Azure.
  2. If you or your team members have Mongo DB experience.
  3. If you are developing cloud agnostic application, you can move your application on-premise or any other cloud vendor.

Reason using SQL API in Cosmos DB

  1. If you have SQL query experience, it would be easy to start.

  2. If you are not looking cloud agnostic application. (can't move Cosmos DB application on-premise or other clouds vendors).

  3. Cosmos DB Change Feed only available with SQL API.

--- UPDATED 2020 ---

Change Feed is available for all the APIs across all available SDKs except the Table API


Both the API’s provide you high throughput, low latency, elastic scale, geo-replication, etc.

It boils down to what you are comfortable with. Many people preferred Mongo, as they are already familiar with Mongo, it’s syntax, tools, and they already had an application built on Mongo which they migrated to CosmosDB.

If you are starting new, and don’t have an existing investment in Mongo, I will suggest starting with SQL. SQL is the oldest API of CosmosDB, and more battle hardened.