
Modelo de SQL Azure basado en vCore
By Sergio Rojas, Post
Hasta ahora, el producto de Azure SQL Database se licenciaba mediante planes basados DTU (o eDTU). Básicamente esto significa que, según el plan que elijamos, obtendremos un dimensionamiento que nos asegura un rendimiento determinado. DTU es el acrónimo en inglés de Database Transaction Units (la “e” de eDTU, indica el término “elastic”).
Estas consisten en una unidad sintética creada por Microsoft para determinar el rendimiento de una base de datos aunando varios elementos relevantes (memoria, CPU y operaciones de lectura-escritura) en una sola unidad. Puede consultarse la documentación técnica aquí.
Desde el pasado mes de abril de 2018 está disponible, a modo de “preview” un nuevo modelo de compra para Azure SQL Database basado en vCore, que nos permite elegir de forma más directa los recursos que se asignarán a nuestro servicio contratado.

¿Qué son las vCPU?
Un núcleo virtual representa la CPU lógica, con la opción para elegir entre generaciones de hardware. El modelo de compras basado en vCore pretende ofrecer flexibilidad, control, transparencia del consumo de recursos individuales, así como una manera directa de traducir los requisitos de carga de trabajo local a la nube. Este modelo permite escalar el procesamiento, la memoria y el almacenamiento en función de las necesidades de carga de trabajo.
En el modelo de compras basado en vCore, podemos elegir entre generación 4 y generación 5. Cada una de ellas nos brinda una serie de recursos y límites diferentes. Los conceptos facturados en este modelo son:
- Procesamiento (Nivel de servicio + número de vCores + generación de hardware)
- Tipo y cantidad de almacenamiento principal y Log.
- Cantidad de transacciones de entrada-salida.
- Almacenamiento de copia de seguridad.

Se puede consultar toda la información para todos los planes y niveles de servicio aquí.
Flexibilidad y rendimiento basados en dos niveles de servicio
El nuevo modelo basado en vCore presenta dos niveles de servicio, “General Purpose” y “Business Critical”. Estos niveles permiten definir y controlar de forma independiente las configuraciones de procesamiento y almacenamiento, y optimizarlas para los requerimientos de nuestra aplicación. Si estamos considerando migrarnos a la nube, el nuevo modelo también nos brinda una forma directa de traducir los requisitos de carga de trabajo locales a la nube.
General Purpose está diseñado para la mayoría de las cargas de trabajo empresariales y ofrece opciones de procesamiento y almacenamiento orientadas a la optimización de costes, equilibradas y escalables.
Business Critical por el contrario, está diseñado para aplicaciones empresariales con altos requisitos de IO, priorizando la disponibilidad y el rendimiento sobre la optimización de costes.
|
General Purpose |
Business Critical |
Best for |
Most business workloads. Offers budget oriented balanced and scalable compute and storage options. |
Business applications with high IO requirements. Offers highest resilience to failures using several isolated replicas. |
Compute |
1 to 80 vCore, Generation 4 and Generation 5 |
1 to 80 vCore, Generation 4 and Generation 5 |
Memory |
7 GB per core |
7 GB per core |
Storage |
Premium remote storage, 5 GB – 4 TB |
Local SSD storage, 5 GB – 4 TB |
IO throughput (approximate) |
500 IOPS per vCore with 7000 maximum IOPS |
5000 IOPS per core with 200000 maximum IOPS |
Availability |
1 replica, no read-scale |
3 replicas, 1 read-scale, zone redundant HA |
Backups |
RA-GRS, 7-35 days (7 days by default) |
RA-GRS, 7-35 days (7 days by default)* |
In-Memory |
N/A |
Supported |
Elegir entre DTU y vCore
Microsoft pretende mantener tanto el modelo mediante DTU como el nuevo de vCore, con el fin de ofrecer al usuario la posibilidad de elegir el que considere más apropiado para su aplicación.
Si estamos buscado una forma simple de comprar y configurar recursos, el modelo basado en DTU proporciona paquetes de recursos preconfigurados en un rango de opciones de rendimiento. Si no estamos interesados en personalizar los recursos subyacentes y prefierimos la simplicidad de pagar una cantidad fija cada mes, el modelo basado en DTU es el más adecuado.
Sin embargo, si necesitamos más información sobre los recursos subyacentes o si necesita mos escalarlos de forma independiente para lograr un rendimiento óptimo, el modelo basado en vCore es la mejor opción. El modelo basado en vCore también es una buena opción si poseemos licencias de SQL Server que podemos trasladar a la nube.
La migración entre los niveles de rendimiento basados en DTU y vCore es posible mediante una operación sencilla y no conlleva corte en los servicios. Es similar al proceso anterior de actualización de los niveles de servicio Estándar a Premium.
Uso de licencias en propiedad para ahorrar costes
Otra de las ventajas del modelo de Azure SQL Database basado en vCore, es que nos permite ahorrar hasta un 30% de coste mensual usando “Azure Hybrid Benefit” para SQL Server.
Este plan nos permite usar nuestras licencias de SQL Server Enterprise Edition o Standard Edition con Software Assurance activo para reducir los costes de una Base de datos única o elástica basada en vCore.
Utilizando la Calculadora de Azure podemos realizar una estimación fiable del ahorro que supone el uso de licencias de SQL server en propiedad.
Durante el periodo de “Preview” en el que se encuentra actualmente este modelo, es posible que no todos los planes, generaciones y niveles estén disponibles en todas las zonas de Azure. Desconozco la fecha que Microsoft tiene en mente para sacar de “Preview” este modelo, pero estimo que será cuestión de 2 a 3 meses que se consolide y se ofrezca en su versión final para todo el público.

Referencias:
https://azure.microsoft.com/es-es/blog/a-flexible-new-way-to-purchase-azure-sql-database/
https://docs.microsoft.com/en-us/azure/sql-database/sql-database-service-tiers-vcore
https://docs.microsoft.com/en-us/azure/sql-database/sql-database-what-is-a-dtu
https://azure.microsoft.com/es-es/pricing/calculator/