Sur Azure, le choix d'une base de données se joue le plus souvent entre Azure SQL et Cosmos DB. Ces deux services résolvent des problèmes très différents. Un mauvais choix a de mauvaises conséquences, tant sur les performances que sur le coût.
01. Azure SQL : le relationnel
La version cloud de Microsoft SQL Server. Transactions ACID, requêtes SQL complexes, écosystème mature. Le bon choix pour la plupart des applications d'entreprise.
02. Cosmos DB : le NoSQL mondial
Cosmos DB est une base NoSQL distribuée à l'échelle mondiale. Son SLA garantit 99,999 % de disponibilité et une latence de l'ordre de la milliseconde. Il excelle dans les scénarios multirégions.
03. Les API de Cosmos DB
Cosmos DB prend en charge plusieurs API :
- API SQL (native)
- API MongoDB (pour une migration depuis Mongo)
- API Cassandra
- API Gremlin (graphes)
- API Table (clé-valeur simple)
04. Cas d'usage
En résumé :
- Applications métier classiques : Azure SQL
- Fort trafic, faible latence : Cosmos DB
- Clientèle répartie dans le monde : Cosmos DB
- Reporting complexe, analyses avec jointures : Azure SQL
05. L'écart de prix
Azure SQL revient généralement moins cher. La puissance de Cosmos DB se paie, et elle n'est pas nécessaire dans tous les cas. À petite échelle, pour des applications métier standard, Cosmos DB est disproportionné.