Estados del regulador de recursos

El regulador de recursos tiene dos estados en SQL Server: habilitado o deshabilitado. Estos estados afectan a las operaciones básicas así como al procesamiento de la carga de trabajo al realizar cambios de configuración. En este tema se explican los estados del regulador de recursos y lo que ocurre cuando:

  • La configuración y el estado iniciales cuando se instala el regulador de recursos.

  • Habilita o deshabilita el regulador de recursos.

  • Cambia una configuración del regulador de recursos.

Configuración inicial

Cuando se instala el regulador de recursos, se crean los siguientes grupos de cargas de trabajo y sus grupos de recursos de servidor correspondientes:

  • Grupo interno y grupo de recursos de servidor interno.

  • Grupo predeterminado y grupo de recursos de servidor predeterminado.

En este punto se deshabilita el regulador de recursos.

Habilitar o deshabilitar el regulador de recursos

Los comportamientos siguientes son normales al habilitar o deshabilitar el gobernador de recursos.

Habilitar el regulador de recursos

Para habilitar el regulador de recursos, ejecute ALTER RESOURCE GOVERNOR RECONFIGURE. Habilitar el regulador de recursos tiene como consecuencia lo siguiente:

  • La función de clasificador se ejecuta para las nuevas conexiones, de forma que se puede asignar su carga de trabajo a los grupos de cargas de trabajo.

  • Se exigirán y aplicarán los límites de los recursos especificados en la configuración del regulador de recursos.

  • Aquellas solicitudes existentes antes de habilitar el regulador de recursos quedarán afectadas por cualquier otro cambio realizado en la configuración en el momento de deshabilitar el regulador de recursos.

Deshabilitar el regulador de recursos

Para deshabilitar el regulador de recursos, ejecute ALTER RESOURCE GOVERNOR DISABLE. Deshabilitar el regulador de recursos tiene como consecuencia lo siguiente:

  • No se ejecuta la función de clasificador.

  • Todas las conexiones nuevas se clasificarán automáticamente en el grupo Predeterminado.

  • Las solicitudes iniciadas por el sistema serán clasificadas en el grupo de cargas de trabajo Interno.

  • Se reiniciarán a sus valores predeterminados todas las configuraciones existentes del grupo de cargas de trabajo y del grupo de recursos de servidor. En este caso, no se desencadenará ningún evento cuando se alcancen los límites.

  • La supervisión normal del sistema no se verá afectada.

  • Se puede cambiar la configuración del regulador de recursos cuando está deshabilitado, pero los cambios no surtirán efecto hasta que se habilite de nuevo el regulador de recursos.

  • Al reiniciar SQL Server, el regulador de recursos no cargará su configuración sino que únicamente tendrá los grupos predeterminados e internos.

Cambiar la configuración del regulador de recursos

Los cambios en la configuración del regulador de recursos no tienen efecto inmediatamente. Un cambio en la configuración se lleva a cabo en dos pasos:

  1. Se ejecuta la instrucción ALTER adecuada para cambiar un valor de configuración del grupo de recursos de servidor o del grupo de cargas de trabajo. Esto actualiza los metadatos de la configuración.

  2. Se ejecuta la instrucción ALTER RESOURCE GOVERNOR. Esto copia los metadatos actualizados a la configuración en memoria. La tabla siguiente describe cuándo surten efecto los cambios de configuración generales y cuándo están visibles en una sesión del regulador de recursos.

Componente

Descripción

Clasificación definida por el usuario

El cambio es efectivo para las nuevas conexiones de sesión.

Grupo de recursos de servidor

El cambio afectará probablemente a las sesiones cuya ejecución sea prolongada; es posible que las sesiones con un tiempo de ejecución más corto finalicen antes de que surta efecto el cambio.

Grupo de cargas de trabajo

El cambio no afecta a las sesiones actuales pero sí afectará a las nuevas conexiones.

Además del comportamiento de la sesión general cuando se ejecutan instrucciones de DDL del regulador de recursos, las configuraciones individuales de un grupo de recursos de servidor o de un grupo de cargas de trabajo provocan unos resultados previsibles y un efecto específico sobre el procesamiento cuando se modifican.

Configuración del grupo de recursos de servidor

Existen cuatro valores para configurar un grupo de recursos de servidor. Éstos son:

  • Un porcentaje mínimo y máximo para el uso de la CPU.

  • Un porcentaje mínimo y máximo para el uso de la memoria.

Al aplicar los cambios a una configuración del grupo de recursos de servidor, hay un período de transición durante el cual se administran las solicitudes activas o en espera. La tabla siguiente describe los requisitos y comportamientos de la sesión cuando se aplican los cambios a un valor de la configuración del grupo de recursos de servidor.

Parámetro

Acción

Descripción

Porcentaje mínimo

Aumentar o disminuir

  • Aumentar: cualquier otro grupo de recursos de servidor se reduce a sus valores de configuración máximos efectivos. Si la suma de todos los valores mínimos supera el 100 por cien, deberá disminuir algunos de los valores mínimos de los demás grupos de recursos de servidor y, a continuación, aumentar el valor mínimo del grupo de recursos de servidor actual.

  • Disminuir: si el máximo efectivo es igual al mínimo, se extraerá del grupo de recursos de servidor aquella memoria no asignada y es posible que las solicitudes en cola produzcan un error. La memoria asignada no se extrae del grupo de recursos de servidor hasta que finalicen las solicitudes activas.

Porcentaje máximo

Aumentar o disminuir

  • Aumentar: ningún problema como resultado del cambio de valor.

  • Disminuir: si el nuevo valor es más alto que el uso real, no habrá ningún problema. Si es más bajo que el uso real, tendrá lugar un período de transición. Se completarán las solicitudes existentes antes de que se pueda realizar la modificación y las nuevas pueden producir errores.

Configuración del grupo de cargas de trabajo

Hay siete valores para configurar un grupo de cargas de trabajo. Éstos son:

  • Una asignación de memoria máxima para una solicitud.

  • Un tiempo de CPU máximo para una solicitud.

  • Un tiempo de espera de recurso para una solicitud.

  • Un valor de importancia relativo para una solicitud.

  • Un límite para el grupo de trabajo para el número de solicitudes.

  • Un grado máximo de paralelismo.

  • Un grupo de recursos de servidor especificado.

Parámetro

Acción

Descripción

Memoria máxima

Aumentar o disminuir

  • Aumentar. Ningún efecto en las consultas activas. Si hay disponible, estas consultas podrán obtener más memoria.

  • Disminuir. Las solicitudes activas no se ven afectadas, pero las nuevas contarán con menos memoria.

Tiempo de CPU máximo

Aumentar o disminuir

  • Aumentar. Ningún efecto sobre las consultas activas.

  • Disminuir. Provoca que se dispare un evento para aquellas consultas que estén por encima del límite, aunque éstas continuarán ejecutándose.

Tiempo de espera de recurso

Aumentar o disminuir

No se verán afectadas aquellas consultas que ya estén esperando en la cola. Las nuevas consultas utilizarán la nueva configuración.

Importancia

Aumentar o disminuir

Sólo afecta a la distribución de la CPU para las consultas del grupo de cargas de trabajo.

Número máximo de solicitudes

Aumentar o disminuir

  • Aumentar. Ningún efecto sobre las consultas existentes.

  • Disminuir. Las consultas existentes no se verán afectadas, pero las nuevas deberán esperar y es posible que superen el tiempo de espera.

Grado máximo de paralelismo

Aumentar o disminuir

Sólo afecta a la compilación y ejecución de nuevas consultas.

Grupo de recursos de servidor especificado

Cambiar

Las solicitudes activas continuarán utilizando el grupo de recursos de servidor existente y su configuración. Las nuevas solicitudes utilizarán el nuevo grupo de recursos de servidor y su configuración.

Configuración del regulador de recursos

Además de cambiar una configuración o un estado actual del regulador de recursos, es posible utilizar la instrucción ALTER RESOURCE GOVERNOR RECONFIGURE para crear o cambiar la función de clasificador.

Al registrar una nueva función de clasificador, está cambiando las reglas utilizadas para enrutar las nuevas conexiones a un grupo de cargas de trabajo diferente. Este cambio no afecta a las consultas que ya estén clasificadas; sólo afecta a las nuevas consultas.