La elección de base de datos en Azure suele reducirse a Azure SQL o Cosmos DB. Los dos resuelven problemas muy distintos. Una mala elección trae malos resultados tanto en rendimiento como en coste.
01. Azure SQL: relacional
La versión adaptada a la nube de Microsoft SQL Server. Transacciones ACID, consultas SQL complejas y un ecosistema maduro. Es la elección correcta para la mayoría de las aplicaciones corporativas.
02. Cosmos DB: NoSQL global
Cosmos DB es una base de datos NoSQL distribuida a escala global. Ofrece un SLA de disponibilidad del 99,999% y una latencia de un solo dígito de milisegundos. Es fuerte en escenarios multirregión.
03. Opciones de API de Cosmos DB
Cosmos DB admite varias API:
- SQL API (nativa)
- MongoDB API (para migrar desde Mongo)
- Cassandra API
- Gremlin API (grafos)
- Table API (clave-valor sencillo)
04. Casos de uso
Orientación rápida:
- Aplicaciones de negocio clásicas: Azure SQL
- Mucho tráfico y baja latencia: Cosmos DB
- Clientes distribuidos por el mundo: Cosmos DB
- Informes complejos y análisis con uniones: Azure SQL
05. Diferencia de precio
Azure SQL suele ser más económico. La potencia de Cosmos DB cuesta cara y no es necesaria en todos los escenarios. A pequeña escala, para aplicaciones de negocio estándar, Cosmos DB es excesivo.