Modelo de compra de núcleo virtual: Azure SQL Managed Instance
Se aplica a:Azure SQL Managed Instance
En este artículo se revisa el modelo de compra de núcleo virtual para Azure SQL Managed Instance.
Información general
Un núcleo virtual representa la CPU lógica y ofrece una opción para elegir las características físicas de hardware (por ejemplo, el número de núcleos, la memoria y el tamaño de almacenamiento). El modelo de compra basado en núcleo virtual le ofrece flexibilidad, control, transparencia de consumo de recursos individuales y una manera sencilla de trasladar los requisitos de carga de trabajo locales a la nube. Este modelo optimiza el precio y le permite elegir los recursos de proceso, memoria y almacenamiento en función de las necesidades de la carga de trabajo.
En el modelo de compra basado en núcleo virtual, los costos dependen de la elección y el uso de:
- Nivel de servicio
- Configuración de hardware
- Los recursos de proceso (número de núcleos virtuales y cantidad de memoria)
- Almacenamiento reservado de la base de datos
- Almacenamiento de copia de seguridad real
El modelo de compra de núcleo virtual usado por Azure SQL Managed Instance proporciona las siguientes ventajas:
- Control sobre la configuración de hardware para satisfacer mejor los requisitos de proceso y memoria de la carga de trabajo.
- Descuentos en los precios de Ventaja híbrida de Azure (AHB) e Instancia reservada (RI).
- Mayor transparencia en los detalles de hardware que potencian el proceso; ayuda a facilitar la planeación de las migraciones desde implementaciones locales.
- Mayor granularidad de escalado con varios tamaños de proceso disponibles.
Compute
El proceso de SQL Managed Instance proporciona una cantidad específica de recursos de proceso que se aprovisionan continuamente con independencia de la actividad de carga de trabajo y factura la cantidad de proceso aprovisionado a un precio fijo por hora.
Puesto que se asignan tres réplicas adicionales de manera automática en el nivel de servicio Crítico para la empresa, el precio es aproximadamente 2,7 veces mayor que en el nivel de servicio De uso general. De igual modo, el mayor precio de almacenamiento por GB en el nivel de servicio Crítico para la empresa refleja que el almacenamiento en SSD local tiene unos límites de E/S superiores y una latencia menor.
Por ejemplo, en el nivel de servicio De uso general, es posible ahorrar en los costos de proceso y licencias; para ello, detenga la instancia cuando no se use. Consulte Detención e inicio de una instancia para obtener más información.
Almacenamiento de datos y de registro
Los factores siguientes afectan a la cantidad de almacenamiento utilizado para los datos y los archivos de registro, y se aplican a los niveles De uso general y Crítico para la empresa.
- En el nivel de servicio De uso general,
tempdb
usa el almacenamiento local de SSD y este costo de almacenamiento se incluye en el precio del núcleo virtual. - En el nivel de servicio Crítico para la empresa,
tempdb
comparte el almacenamiento local de SSD con datos y archivos de registro, y el costo de almacenamientotempdb
se incluye en el precio del núcleo virtual. - El tamaño máximo de almacenamiento para una instancia de SQL Managed Instance se debe especificar en múltiplos de 32 GB.
Importante
En ambos niveles de servicio, se le cobra por el tamaño máximo de almacenamiento que tiene configurado para una instancia administrada.
Para supervisar el tamaño de almacenamiento de instancias consumido total para SQL Managed Instance, use la métricastorage_space_used_mb. Si desea supervisar el tamaño actual del almacenamiento asignado y utilizado de datos y archivos de registro individuales en una base de datos con T-SQL, utilice la vista sys.database_files y la función FILEPROPERTY(... , 'SpaceUsed').
Almacenamiento de copia de seguridad
Para admitir las capacidades de SQL Managed Instance, se asigna almacenamiento a las copias de seguridad de base de datos. Este almacenamiento es independiente del almacenamiento de datos y archivos de registro, y se factura por separado.
- Recuperación a un momento dado: el consumo de almacenamiento depende de la tasa de cambio de la base de datos y del periodo de retención configurado para las copias de seguridad. Puede configurar un período de retención independiente para cada base de datos que abarque entre 1 y 35 días para SQL Managed Instance. Se proporciona una cantidad de almacenamiento de copia de seguridad equivalente al tamaño máximo de datos configurado sin costo adicional.
- Retención a largo plazo (LTR): tiene la opción de configurar la retención a largo plazo de copias de seguridad completas hasta un máximo de 10 años. La configuración que elija determina la cantidad de almacenamiento que se usará para las copias de seguridad de LTR.
Niveles de servicio
El nivel de servicio define generalmente la arquitectura de almacenamiento, los límites de espacio y de E/S y las opciones de continuidad empresarial relacionadas con la disponibilidad y la recuperación ante desastres.
Azure SQL Managed Instance tiene dos niveles de servicio:
- De uso general. Puede optar por usar el nivel de servicio de uso general de la nueva generación actualizado (versión preliminar).
- Crítico para la empresa.
Para una comparación detallada entre niveles de servicio, revise los límites de recursos, pero use la siguiente tabla para una breve introducción:
Categoría | Uso general | Uso general de la nueva generación | Crítico para la empresa |
---|---|---|---|
Más adecuado para | La mayoría de las cargas de trabajo empresariales. Ofrece opciones de proceso y almacenamiento equilibradas y escalables pensando en el presupuesto. | Cargas de trabajo empresariales orientadas al presupuesto que necesitan mayor capacidad, mejor rendimiento y flexibilidad de recursos. | Ofrece a las aplicaciones empresariales la mayor resistencia a los errores mediante el uso de varias réplicas aisladas y proporciona el mayor rendimiento de E/S. |
Número de núcleos virtuales máximo | 80 | 128 | 128 |
Tamaño de almacenamiento máximo de la instancia | 16 TB | 32 TB | 16 TB |
Bases de datos máximas por instancia | 100 | 500 | 100 |
Réplicas de solo lectura | 0 | 0 | 1 |
Réplicas para disponibilidad | Nodos en espera para alta disponibilidad | Nodos en espera para alta disponibilidad | Tres réplicas de alta disponibilidad, 1 también es una réplica de escalado de lectura |
Precios y facturación | El núcleo virtual, el almacenamiento reservado y el almacenamiento de copia de seguridad se cobran. Las IOPS no se cobran. |
Se cobra por el núcleo virtual, el almacenamiento reservado, el almacenamiento de copia de seguridad y los IOPS (que excedan la cuota gratuita). | El núcleo virtual, el almacenamiento reservado y el almacenamiento de copia de seguridad se cobran. Las IOPS no se cobran. |
Nota:
Para obtener más información sobre el Acuerdo de Nivel de Servicio (SLA), consulte SLA para Azure SQL Managed Instance.
De uso general
El modelo de arquitectura para el nivel de servicio de uso general se basa en la separación del proceso y el almacenamiento. Este modelo de arquitectura se basa en la alta disponibilidad y fiabilidad de Azure Blob Storage que replica de forma transparente los archivos de base de datos y garantiza que no se pierdan los datos si se produce algún error en la infraestructura subyacente.
En la siguiente imagen se muestran cuatro nodos en el modelo de arquitectura estándar con las capas separadas de proceso y almacenamiento.
En el modelo de arquitectura para el nivel de servicio de uso general, hay dos capas:
- Una capa de proceso sin estado que ejecuta el proceso
sqlservr.exe
y que solo contiene datos en caché y transitorios (por ejemplo, caché de planes, grupo de búferes o grupo de almacenes de columnas). Este nodo sin estado lo opera Azure Service Fabric, que inicializa el proceso, controla el estado del nodo y realiza la conmutación por error en otro lugar si es necesario. - Una capa de datos con estado con archivos de base de datos (.mdf o .ldf) que se almacenan en Azure Blob Storage. Azure Blob Storage garantiza que no se pierdan los datos de ningún registro que se encuentre en un archivo de base de datos. Azure Storage tiene redundancia o disponibilidad de datos integrada que garantiza la conservación de los registros de una página o archivo de registro aunque se bloquee el proceso.
Siempre que se actualice un sistema operativo o un motor de base de datos, si se produce un error en la infraestructura subyacente, o si se detecta algún problema crítico en el proceso sqlservr.exe
, Azure Service Fabric moverá el proceso sin estado a otro nodo de proceso sin estado. Hay un conjunto de nodos libres que esperan ejecutar un nuevo servicio de proceso si se produce una conmutación por error del nodo principal, a fin de minimizar el tiempo de conmutación por error. Esto no afecta a los datos de la capa de Azure Storage, y los archivos de registro o de datos se anexan al proceso inicializado recientemente. Este proceso garantiza una disponibilidad del 99,99 % de manera predeterminada. Podría afectar al rendimiento de grandes cargas de trabajo que están en proceso debido al tiempo de transición y al hecho de que el nuevo nodo se inicia con la caché inactiva.
¿Cuándo elegir este nivel de servicio?
De uso general es un nivel de servicio predeterminado de Azure SQL Managed Instance diseñado para la mayoría de las cargas de trabajo genéricas. Si necesita un motor de base de datos completamente administrado con un SLA predeterminado y una latencia de almacenamiento de entre 5 y 10 ms, el nivel De uso general es la opción que busca.
Uso general de la nueva generación
Nota:
La actualización del nivel de servicio de uso general de nueva generación se encuentra actualmente en versión preliminar. Para empezar, use la actualización del nivel de servicio de uso general de nueva generación para las instancias nuevas y existentes que cumplan los requisitos.
El nivel de servicio de uso general de nueva generación es una actualización arquitectónica del nivel de servicio de uso general existente que ofrece las siguientes características clave:
- Diseñado para empresas con mayores requisitos de rendimiento, pero con el mismo costo de línea de base que el nivel de servicio de uso general
- Actualizaciones importantes del rendimiento, la escalabilidad y la flexibilidad de recursos con respecto al nivel de servicio de uso general
- Usa discos administrados en lugar de blobs de páginas, lo que mejora drásticamente las métricas de rendimiento del almacenamiento
- 3 IOPS gratuitas por cada GB de almacenamiento reservado
- Compatibilidad con hasta 500 bases de datos por instancia y un tamaño de almacenamiento máximo de 32 TB
Como el nivel de servicio de uso general de nueva generación es una actualización del nivel de servicio de uso general existente, independientemente del nivel de servicio que use la instancia, la factura mostrará el nivel de servicio de uso general.
Modelo de arquitectura
El nivel de servicio de uso general de nueva generación es una actualización del nivel de servicio de uso general existente que usa una capa de almacenamiento remoto mejorada para almacenar datos de instancia y archivos de registro en discos administrados en lugar de blob en páginas. Esto significa que la actualización del nivel de servicio de uso general de próxima generación ofrece una latencia de almacenamiento, IOPS y rendimiento más rápidos que el nivel de servicio de uso general existente, con mayores límites de almacenamiento, número de núcleos virtuales y número máximo de bases de datos. Además, como todas las instancias comparten las cuotas de rendimiento, ya no es necesario cambiar el tamaño de los archivos individuales para mejorar su rendimiento. El costo de línea base de la capa de servicio de uso general de nueva generación es el mismo que el del nivel de servicio de uso general, pero puede usar controles deslizantes para aumentar el rendimiento de E/S, que se factura por separado.
El nivel de servicio de uso general de nueva generación ayuda a reducir el costo al ofrecer IOPS gratuitas a razón de tres IOPS por cada GB de almacenamiento reservado. El precio del almacenamiento incluye las IOPS mínimas. Si se supera el mínimo, se cobra de la siguiente manera: 1 IOPS = precio del almacenamiento (por región) dividido por tres.
Por ejemplo:
- Si 1 GB de almacenamiento cuesta 0,115, entonces 1 IOPS = 0,115/3 = 0,038 por IOPS.
- Una instancia de 1024 GB recibe 3072 IOPS gratis. Puede elegir aumentar sus IOPS hasta el límite de la VM por un costo adiciona.
¿Cuándo elegir este nivel de servicio?
Elija este nivel de servicio si su empresa está orientada al presupuesto pero las métricas de rendimiento y los límites del nivel de servicio de uso general son insuficientes.
Las principales razones por las que debería elegir el nivel de servicio de uso general de nueva generación en lugar del nivel de uso general son:
- Mejor rendimiento para el mismo costo de línea base
- Latencia, rendimiento e IOPS mejorados
- Mayor capacidad de almacenamiento
- Más flexibilidad para el proceso
- Necesita más de 100 bases de datos para una sola instancia
- Necesita más de 16 TB de almacenamiento reservado
Crítico para la empresa
El modelo de nivel de servicio Crítico para la empresa se basa en un clúster de procesos del motor de base de datos. Este modelo de arquitectura se basa en un cuórum de nodos de motor de base de datos siempre disponibles para minimizar los impactos en el rendimiento de su carga de trabajo, incluso durante las actividades de mantenimiento. Azure actualiza y revisa el sistema operativo subyacente, los controladores y el motor de base de datos de SQL Server de forma transparente, con el mínimo tiempo de inactividad para los usuarios finales.
En el modelo Crítico para la empresa, el proceso y el almacenamiento se integran en cada nodo. La alta disponibilidad se logra mediante la replicación de datos entre procesos del motor de base de datos en cada nodo de un clúster de cuatro nodos, en el que cada nodo usa un SSD conectado localmente como almacenamiento de datos.
El proceso del motor de base de datos de SQL Server y los archivos .mdf o .ldf subyacentes se colocan en el mismo nodo con el almacenamiento SSD conectado localmente, lo que proporciona baja latencia para la carga de trabajo. La alta disponibilidad se implementa mediante tecnología parecida a la de los grupos de disponibilidad AlwaysOn de SQL Server.
Cada instancia es un clúster de nodos del motor de base de datos que contiene copias de todas las bases de datos de una instancia, con una base de datos principal accesible para las cargas de trabajo del cliente y tres bases de datos secundarias que contienen copias de los datos, listas para la conmutación por error. El nodo principal inserta constantemente los cambios a los nodos secundarios para garantizar que los datos estén disponibles en réplicas secundarias si, por cualquier motivo, se produce un error en el nodo principal.
El Motor de base de datos de SQL Server controla la conmutación por error: una réplica secundaria se convierte en el nodo principal y se crea una nueva réplica secundaria para garantizar que hay suficientes nodos en el clúster. La carga de trabajo se redirige automáticamente al nuevo nodo principal.
Además, el clúster Crítico para la empresa tiene una capacidad Escalado horizontal de lectura integrada, que proporciona una réplica de solo lectura gratuita usada para ejecutar consultas de solo lectura (por ejemplo, informes) que no afectarán al rendimiento de la carga de trabajo en la réplica principal.
¿Cuándo elegir este nivel de servicio?
El nivel de servicio Crítico para la empresa está diseñado para las aplicaciones que requieren respuestas de baja latencia desde el almacenamiento SSD subyacente (1 o 2 ms como promedio), recuperación más rápida si se produce un error en la infraestructura subyacente o necesidad de descargar informes, análisis y consultas de solo lectura en la versión gratuita de la réplica secundaria legible de la base de datos principal.
A continuación, se indican las principales razones por las que debe elegir el nivel de servicio Crítico para la empresa en lugar del nivel De uso general:
- Requisitos de latencia baja de E/S: las cargas de trabajo que necesitan una respuesta rápida de la capa de almacenamiento (promedio de 1 a 2 milisegundos) deben usar el nivel Crítico para la empresa.
- Carga de trabajo con informes y consultas analíticas que se pueden redirigir a la réplica secundaria gratuita de solo lectura.
- Mayor resistencia y recuperación más rápida de los errores. En caso de que se produzca un error en el sistema, las bases de datos de la instancia principal se desconectan y una de las réplicas secundarias se convertirá inmediatamente en la nueva instancia principal de lectura y escritura, lista para procesar consultas. No es necesario que el motor de base de datos analice ni rehaga las transacciones del archivo de registro, ni que cargue datos en búferes de memoria.
- Protección avanzada de datos dañados. Dado que el nivel Crítico para la empresa usa réplicas de bases de datos en segundo plano, el servicio aprovecha la reparación automática de páginas que hay disponible con la creación de reflejo y los grupos de disponibilidad para ayudar a mitigar los datos dañados. Si una réplica no puede leer una página debido a un problema de integridad de datos, se recuperará una copia nueva de la página de otra réplica, lo que reemplazará la página ilegible sin que se produzca pérdida de datos ni tiempo de inactividad del cliente. Esta función está disponible en el nivel De uso general si la instancia administrada tiene una réplica geográfica secundaria.
- Mayor disponibilidad: el nivel Crítico para la empresa en la configuración de varias zonas de disponibilidad proporciona resistencia a errores de zona y un Acuerdo de Nivel de Servicio de mayor disponibilidad.
- Recuperación geográfica rápida: si se configura un grupo de conmutación por error automática, el nivel Crítico para la empresa tiene un Objetivo de punto de recuperación (RPO) garantizado de 5 segundos y un Objetivo de tiempo de recuperación (RTO) de 30 segundos durante el 100 % de las horas implementadas.
Al especificar el nivel de servicio en plantillas o scripts, el nivel se proporciona mediante su nombre. Se aplica la tabla siguiente:
Hardware | Nombre |
---|---|
De uso general | GeneralPurpose |
Crítico para la empresa | BusinessCritical |
Configuraciones de hardware
Las opciones de configuración de hardware en el modelo de núcleo virtual incluyen la serie Estándar (Gen5), la serie Premium y la serie Premium optimizada para memoria. En general, la configuración de hardware define los límites de proceso y de memoria, así como otras características que afectan al rendimiento de la carga de trabajo.
Para obtener más información sobre las limitaciones y detalles específicos de las configuraciones de hardware, vea Características de la configuración de hardware.
En la vista de administración dinámica sys.dm_user_db_resource_governance, la generación de hardware para bases de datos que usan procesadores Intel SP-8160 (Skylake) aparece como Gen6, mientras que la generación de hardware para las instancias que usan procesadores Intel 8272CL (Cascade Lake) aparece como Gen7. Las CPU 8370C (Ice Lake) de Intel® que usan las generaciones de hardware de la serie prémium y la serie prémium optimizada para memoria aparecen como Gen8. Los límites de recursos de todas las instancias de la serie estándar (Gen5) son los mismos, independientemente del tipo de procesador (Broadwell, Skylake o Cascade Lake).
Seleccionar configuración de hardware
Puede seleccionar la configuración de hardware en el momento de la creación de la instancia o puede cambiar el hardware de una instancia existente.
Selección de una configuración de hardware al crear una instancia de SQL Managed Instance
Para obtener información detallada, consulte Creación de una instancia administrada de SQL.
En la pestaña Aspectos básicos, seleccione el vínculo Configurar base de datos en la sección Proceso y almacenamiento y, a continuación, seleccione el hardware deseado:
Cambio de hardware de una instancia existente de SQL Managed Instance
En la página SQL Managed Instance, seleccione Proceso y almacenamiento en Configuración:
En la página Proceso y almacenamiento, puede cambiar el hardware en Generación de hardware mediante los controles deslizantes para núcleos virtuales y almacenamiento.
Al especificar el parámetro de hardware en plantillas o scripts, el hardware se proporciona al usar su nombre. Se aplica la tabla siguiente:
Hardware | Nombre |
---|---|
Serie estándar (Gen5) | Gen5 |
Serie Premium | G8IM |
Serie prémium optimizada para memoria | G8IH |
Nombres de SKU
Nota:
Al especificar hardware y nivel de servicio en plantillas o scripts, puede especificarlos de forma independiente o puede proporcionar un nombre de SKU. Al especificar el nombre de la SKU, se aplica la tabla siguiente:
SKU | Nivel de servicio | Hardware |
---|---|---|
GP_Gen5 | De uso general | Serie estándar |
GP_G8IM | De uso general | Serie Premium |
GP_G8IH | De uso general | Serie Premium optimizada para memoria |
BC_Gen5 | Crítico para la empresa | Serie estándar |
BC_G8IM | Crítico para la empresa | Serie Premium |
BC_G8IH | Crítico para la empresa | Serie Premium optimizada para memoria |
Disponibilidad de hardware
Series estándar (Gen5) y prémium
El hardware de la serie estándar (Gen5) y de la serie Premium está disponible en todas las regiones públicas de todo el mundo.
El hardware de la serie Premium optimizada para memoria está en versión preliminar y tiene una disponibilidad regional limitada. Para más información, consulte límites de recursos de recurso de SQL Managed Instance.