Escalar recursos de grupos elásticos en Azure SQL Database

Se aplica a: Azure SQL Database

En este artículo se describe cómo escalar los recursos de proceso y almacenamiento disponibles para los grupos elásticos y las bases de datos agrupadas en Azure SQL Database.

Cambio de los recursos de proceso (núcleos virtuales o DTU)

Después de elegir inicialmente el número de núcleos virtuales o de eDTU, puede escalar o reducir verticalmente un grupo elástico de forma dinámica en función de la experiencia real mediante cualquiera de los métodos siguientes:

Impacto de cambiar el nivel de servicio o la escala del tamaño de proceso

El cambio en el nivel de servicio o el tamaño de proceso de un grupo elástico sigue un patrón similar en cuanto a bases de datos únicas y principalmente implica que el servicio realice los pasos siguientes:

  1. Creación de una instancia de proceso nueva para el grupo elástico

    Se crea una instancia de proceso nueva para el grupo elástico con el tamaño de proceso y el nivel de servicio solicitados. Para algunas combinaciones de cambios en el nivel de servicio y el tamaño de proceso, se debe crear una réplica de cada base de datos en la nueva instancia de proceso, lo que implica copiar los datos y puede influir en gran medida en la latencia general. En cualquier caso, las bases de datos permanecen en línea durante este paso y las conexiones se continúan dirigiendo a las bases de datos en la instancia de proceso original.

  2. Cambio en el enrutamiento de conexiones a la nueva instancia de proceso

    Se colocan las conexiones existentes en las bases de datos en la instancia de proceso original. En la nueva instancia de proceso las nuevas conexiones se establecen en las bases de datos. Para algunas combinaciones de cambios de nivel de servicio y de tamaño de proceso, los archivos de base de datos se desasocian y se vuelven a asociar durante la modificación. No obstante, el modificador puede provocar una breve interrupción del servicio cuando las bases de datos no estén disponibles de forma general durante menos de 30 segundos y, a menudo, durante solo unos segundos. Si hay transacciones de larga duración activas cuando se eliminan las conexiones, la duración de este paso puede ser mayor con el fin de recuperar las transacciones anuladas. La Recuperación de base de datos acelerada puede reducir el impacto de la anulación de transacciones de larga duración.

Importante

Durante los pasos del flujo de trabajo no se pierden datos.

Latencia de cambiar el nivel de servicio o la escala del tamaño de proceso

La latencia estimada para cambiar el nivel de servicio, escalar el tamaño de proceso de una sola base de datos o grupo elástico, trasladar una base de datos dentro o fuera de un grupo elástico o trasladar una base de datos entre grupos elásticos incluye los parámetros que se indican a continuación:

Latencia de escalado de grupos elásticos Para el grupo elástico básico, estándar y de uso general Para el grupo elástico Premium o Crítico para la empresa Para el grupo elástico de hiperescala
Desde el grupo elástico básico, estándar y de uso general Proporcional al número de bases de datos • Latencia proporcional al espacio de base de datos usado debido a la copia de datos.
• Normalmente, menos de 1 minuto por GB de espacio usado.
N/D: las bases de datos deben agregarse individualmente a los grupos elásticos de hiperescala. Escalado de la latencia por base de datos documentada en Escalado de recursos de base de datos únicas.
Desde el grupo elástico Premium o Crítico para la empresa • Latencia proporcional al espacio de base de datos usado debido a la copia de datos.
• Normalmente, menos de 1 minuto por GB de espacio usado.
• Latencia proporcional al espacio de base de datos usado debido a la copia de datos.
• Normalmente, menos de 1 minuto por GB de espacio usado.
N/D: las bases de datos deben agregarse individualmente a los grupos elásticos de hiperescala. Escalado de la latencia por base de datos documentada en Escalado de recursos de base de datos únicas.
Desde el grupo elástico de hiperescala N/D N/D • Latencia de tiempo constante independiente del espacio usado.
• Normalmente, menos de 2 minutos.

Nota:

  • Al cambiar el nivel de servicio o la escala de proceso de un grupo elástico que no sea de hiperescala, para calcular la estimación se debe usar la suma del espacio usado en todas las bases de datos del grupo. La latencia de escalado de los grupos elásticos de hiperescala es independiente del espacio usado.
  • En el caso de los grupos elásticos Estándar y De uso general, la latencia para mover una base de datos dentro o fuera de un grupo elástico o entre grupos elásticos será proporcional al tamaño de la base de datos si el grupo elástico usa almacenamiento de recursos compartidos de archivos Premium (PFS). Para determinar si un grupo usa el almacenamiento PFS, ejecute la siguiente consulta en el contexto de cualquier base de datos del grupo. Si el valor de la columna AccountType es PremiumFileStorage o PremiumFileStorage-ZRS, el grupo utiliza el almacenamiento PFS.
SELECT s.file_id,
       s.type_desc,
       s.name,
       FILEPROPERTYEX(s.name, 'AccountType') AS AccountType
FROM sys.database_files AS s
WHERE s.type_desc IN ('ROWS', 'LOG');

Nota:

  • La propiedad con redundancia de zona seguirá siendo la misma de manera predeterminada al escalar un grupo elástico del nivel Crítico para la empresa al nivel De uso general.
  • La latencia de la operación de escalado cuando se cambia la redundancia de zona para un grupo elástico de uso general es proporcional al tamaño de la base de datos.
  • No se admite el cambio de un grupo elástico existente que no sea de Hiperescala a la edición Hiperescala. Para más información, consulte el artículo sobre grupos elásticos de hiperescala. En su lugar, las bases de datos deben agregarse individualmente a los grupos elásticos de hiperescala.
  • No se admite el cambio de edición de un grupo elástico de Hiperescala a una edición que no sea Hiperescala. Para más información, consulte el artículo sobre grupos elásticos de hiperescala.

Consideraciones adicionales cuando se cambia el nivel de servicio o la escala de tamaño de proceso

  • Cuando se reducen los núcleos virtuales o las eDTU de un grupo elástico, el espacio usado del grupo debe ser menor que el límite de tamaño máximo de datos del nivel de servicio de destino y el proceso del grupo.
  • Al aumentar las eDTU de un grupo elástico, se puede aplicar un costo de almacenamiento adicional si:
    • El tamaño máximo de datos del grupo es compatible con el grupo de destino y
    • El tamaño máximo de datos del grupo supera la cantidad de almacenamiento incluida del grupo de destino.
  • Por ejemplo, si un grupo Estándar de 100 eDTU con un tamaño máximo de datos de 100 GB se reduce a un grupo Estándar de 50 eDTU, se aplica un costo de almacenamiento adicional porque el grupo de destino admite un tamaño máximo de datos de 100 GB y su cantidad de almacenamiento incluido es solo de 50 GB. Por lo tanto, la cantidad de almacenamiento adicional es 100 GB – 50 GB = 50 GB. Para conocer el precio del almacenamiento adicional, consulte los precios de SQL Database. Si la cantidad real de espacio utilizado es menor que la cantidad de almacenamiento incluido, se puede evitar este costo adicional si se reduce el tamaño máximo de datos a la cantidad incluida.

Facturación durante el cambio de escala

Se le cobrará por cada hora que una base de datos exista con el mayor nivel de servicio + tamaño de proceso aplicable durante esa hora, independientemente del uso o de si la base de datos estuvo activa durante menos tiempo. Por ejemplo, si crea una base de datos única y la elimina a los cinco minutos, se le efectuará un cargo de una hora por usar la base de datos.

cambiar el tamaño de almacenamiento de grupos elásticos

El tamaño de almacenamiento (tamaño máximo de datos) del grupo elástico se puede especificar mediante Azure Portal, PowerShell, la CLI de Azure o la API REST. Al aumentar el tamaño máximo de datos del grupo elástico, el valor especificado no puede superar el límite de tamaño máximo de datos del objetivo de servicio del grupo. Al reducir el tamaño máximo de datos, el nuevo valor especificado debe ser igual o mayor que la suma del espacio asignado en todas las bases de datos del grupo.

Importante

En algunas circunstancias, puede que deba reducir una base de datos para reclamar el espacio no utilizado. Para obtener más información, consulte Administración del espacio de archivo en Azure SQL Database.

Modelo de compra basado en núcleo virtual

  • El tamaño de almacenamiento (tamaño máximo de datos) para los grupos elásticos de los niveles De uso general o Crítico para la empresa se pueden especificar hasta los límites de tamaño máximo de datos especificados en Límites de recursos para grupos elásticos que usan el modelo de compra de núcleo virtual. El tamaño máximo de los datos del grupo elástico se puede aumentar o disminuir en múltiplos de 1 GB.
  • El precio del almacenamiento para un grupo elástico es el tamaño máximo de datos especificado multiplicado por el precio de la unidad de almacenamiento del nivel de servicio. Para más información sobre los precios del almacenamiento, consulte Precios de SQL Database.

Importante

En algunas circunstancias, puede que deba reducir una base de datos para reclamar el espacio no utilizado. Para obtener más información, consulte Administración del espacio de archivo en Azure SQL Database.

Modelo de compra basado en DTU

  • El precio de la eDTU de un grupo elástico incluye una cierta cantidad de almacenamiento sin ningún costo adicional. El almacenamiento de datos adicional más allá de la cantidad incluida se puede aprovisionar con un costo adicional hasta el límite máximo de tamaño de datos correspondiente a las eDTU aprovisionadas. Para conocer las cantidades de almacenamiento incluidas y los límites de tamaño máximo, consulte Límites de recursos para grupos elásticos que utilizan el modelo de compra de DTU.
  • El precio del almacenamiento adicional para un grupo de bases de datos elásticas es la cantidad de almacenamiento adicional multiplicada por el precio de la unidad de almacenamiento adicional del nivel de servicio. Para más información sobre el precio del almacenamiento adicional, consulte los precios de SQL Database.
  • Los valores válidos para el tamaño máximo de datos de un grupo elástico de nivel Estándar o Premium pueden ser uno de estos valores: 50 GB, 100 GB, 150 GB, 200 GB, 250 GB, 300 GB, 400 GB, 500 GB, 750 GB, 800 GB, 1024 GB, 1200 GB, 1280 GB, 1536 GB, 1600 GB, 1792 GB, 2000 GB, 2048 GB, 2304 GB, 2500 GB, 2560 GB, 2816 GB, 3000 GB, 3072 GB, 3328 GB, 3584 GB, 3840 GB o 4096 GB. El tamaño máximo de datos especificado no puede superar el límite máximo de tamaño de datos especificado para las eDTU aprovisionadas.

Importante

En algunas circunstancias, puede que deba reducir una base de datos para reclamar el espacio no utilizado. Para obtener más información, consulte Administración del espacio de archivo en Azure SQL Database.

Supervisión o cancelación de cambios de escalado

Un cambio del nivel de servicio o una operación de cambio de escala del proceso se puede supervisar y cancelar.

En la página de información general del grupo elástico de SQL, vaya a Notificaciones y seleccione el icono que indica que hay una operación en curso:

Captura de pantalla de Azure Portal de una implementación en curso.

En la página Implementación en curso, seleccione Cancelar.

Permisos

Para escalar un grupo elástico a través de Azure Portal, PowerShell, la CLI de Azure o la API REST, se necesitan permisos de RBAC de Azure, específicamente el Colaborador, el rol Colaborador de base de datos SQL o roles RBAC de Azure Colaborador de SQL Server. Para más información, consulte Roles integrados de Azure RBAC.

Para conocer los límites de recursos globales, consulte Límites de recursos basados en núcleos virtuales de SQL Database para grupos elásticos y SQL Database DTU-based resource limits - elastic pools (Límites de recursos basados en DTU de SQL Database para grupos elásticos).