Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Se aplica a:SQL Server
Azure SQL Managed Instance
Cambia un regulador de recursos existente configuración del grupo de recursos para una instancia del motor de base de datos.
Nota
Para Azure SQL Managed Instance, debe estar en el contexto de la base de datos de master
para modificar la configuración del regulador de recursos.
Convenciones de sintaxis de Transact-SQL
ALTER RESOURCE POOL { pool_name | [default] }
[WITH
( [ MIN_CPU_PERCENT = value ]
[ [ , ] MAX_CPU_PERCENT = value ]
[ [ , ] CAP_CPU_PERCENT = value ]
[ [ , ] AFFINITY {
SCHEDULER = AUTO
| ( <scheduler_range_spec> )
| NUMANODE = ( <NUMA_node_range_spec> )
}]
[ [ , ] MIN_MEMORY_PERCENT = value ]
[ [ , ] MAX_MEMORY_PERCENT = value ]
[ [ , ] MIN_IOPS_PER_VOLUME = value ]
[ [ , ] MAX_IOPS_PER_VOLUME = value ]
)]
[;]
<scheduler_range_spec> ::=
{SCHED_ID | SCHED_ID TO SCHED_ID}[,...n]
<NUMA_node_range_spec> ::=
{NUMA_node_ID | NUMA_node_ID TO NUMA_node_ID}[,...n]
Es el nombre de un grupo de recursos definido por el usuario existente o el grupo de recursos integrado default
.
default
debe estar entre corchetes ([]
) o comillas (""
) cuando se usa con ALTER RESOURCE POOL
para evitar un conflicto con DEFAULT
, que es una palabra reservada del sistema. Para obtener más información, consulte Identificadores de base de datos.
Los grupos de recursos integrados y los grupos de cargas de trabajo usan todos los nombres en minúsculas, como default
. Use el default
en minúsculas en los servidores que usan una intercalación que distingue mayúsculas de minúsculas. Los servidores con intercalación que no distinguen mayúsculas de minúsculas tratan default
, Default
y DEFAULT
como el mismo valor.
Especifica el ancho banda de la CPU promedio garantizado para todas las solicitudes en el grupo de recursos de servidor cuando hay contención de CPU. valor es un entero con un valor predeterminado de 0. El intervalo permitido para value es de 0 a 100.
Especifica el ancho de banda de CPU promedio máximo que reciben todas las solicitudes del grupo de recursos cuando hay contención de CPU. value es un entero con un valor predeterminado de 100. El intervalo permitido para value es de 1 a 100.
Válido para : SQL Server 2012 (11.x) y versiones posteriores.
Especifica un límite máximo en el ancho de banda de CPU que reciben todas las solicitudes del grupo de recursos. Limita el nivel máximo de ancho de banda de CPU para que sea el mismo que el valor especificado. value es un entero con un valor predeterminado de 100. El intervalo permitido para value es de 1 a 100.
Nota
Debido a la naturaleza estadística de la gobernanza de cpu, es posible que observe picos cortos ocasionales que superan el valor especificado en CAP_CPU_PERCENT
.
Válido para : SQL Server 2012 (11.x) y versiones posteriores.
Adjunte el grupo de recursos de servidor a los programadores específicos. El valor predeterminado es AUTO
.
Al especificar <scheduler_range_spec>
para AFFINITY SCHEDULER
afinidad, el grupo de recursos se aplica a los programadores del motor de base de datos identificados por los identificadores especificados. Estos identificadores se asignan a los valores de la columna scheduler_id
de sys.dm_os_schedulers.
Al especificar <NUMA_node_range_spec>
para AFFINITY NUMANODE
afinidad entre el grupo de recursos y los programadores del motor de base de datos que se asignan a las CPU lógicas que corresponden al nodo NUMA especificado o a un intervalo de nodos. Puede usar la siguiente consulta de Transact-SQL para detectar la asignación entre la configuración de NUMA física y los identificadores del programador del motor de base de datos.
SELECT osn.memory_node_id AS numa_node_id,
sc.cpu_id,
sc.scheduler_id
FROM sys.dm_os_nodes AS osn
INNER JOIN sys.dm_os_schedulers AS sc
ON osn.node_id = sc.parent_node_id
AND
sc.scheduler_id < 1048576;
Especifica la cantidad mínima de memoria del área de trabajo de consulta reservada para el grupo de recursos que no se puede compartir con otros grupos de recursos. valor es un entero con un valor predeterminado de 0. El intervalo permitido para valor es de 0 a 100.
Especifica la cantidad máxima de memoria del área de trabajo de consulta que pueden usar las solicitudes de este grupo de recursos. value es un entero con un valor predeterminado de 100. El intervalo permitido para value es de 1 a 100.
Válido para : SQL Server 2014 (12.x) y versiones posteriores.
Especifica el número mínimo de operaciones de E/S por segundo (IOPS) por volumen de disco que se deben reservar para el grupo de recursos de servidor. El intervalo permitido para value es de 0 a 2^31-1 (2.147.483.647). Especifique 0 para indicar que no hay un mínimo para el grupo. El valor predeterminado es 0.
Válido para : SQL Server 2014 (12.x) y versiones posteriores.
Especifica el número máximo de operaciones de E/S por segundo (IOPS) por volumen de disco que se deben permitir para el grupo de recursos de servidor. El intervalo permitido para value es de 0 a 2^31-1 (2.147.483.647). Especifique 0 para quitar un límite de IOPS para el grupo. El valor predeterminado es 0.
Si el MAX_IOPS_PER_VOLUME
de un grupo está establecido en 0, el grupo no se rige por E/S en absoluto y puede tomar todas las IOPS del sistema incluso si otros grupos tienen MIN_IOPS_PER_VOLUME
establecido. En este caso, se recomienda establecer el valor de MAX_IOPS_PER_VOLUME
para este grupo en un número alto (por ejemplo, el valor máximo 2^31-1) para hacer que esta E/S del grupo se rija y respetar las reservas de IOPS que podrían existir para otros grupos.
La suma de MIN_CPU_PERCENT
o MIN_MEMORY_PERCENT
para todos los grupos de recursos no puede superar el 100 %.
MIN_IOPS_PER_VOLUME
y MAX_IOPS_PER_VOLUME
especifique las E/S mínimas y máximas por segundo. Las E/S pueden ser lecturas o escrituras, y pueden ser de cualquier tamaño. Por lo tanto, con los mismos límites de IOPS, el rendimiento mínimo y máximo de E/S puede variar en función de la combinación de tamaños de E/S en la carga de trabajo.
Los valores de MAX_CPU_PERCENT
y MAX_MEMORY_PERCENT
deben ser mayores o iguales que los valores de MIN_CPU_PERCENT
y MIN_MEMORY_PERCENT
, respectivamente.
CAP_CPU_PERCENT
difiere de MAX_CPU_PERCENT
en que las cargas de trabajo asociadas al grupo pueden usar la capacidad de CPU por encima del valor de MAX_CPU_PERCENT
si está disponible, pero no por encima del valor de CAP_CPU_PERCENT
. Aunque puede haber picos cortos superiores a CAP_CPU_PERCENT
, las cargas de trabajo no pueden superar CAP_CPU_PERCENT
durante períodos prolongados de tiempo, incluso cuando hay capacidad adicional de CPU disponible.
El porcentaje total de CPU para cada componente afinidad (programador o nodos NUMA) no puede superar el 100 %.
Para más información, consulte
Cuando se cambia un plan que afecta a la configuración, la nueva configuración surte efecto en planes previamente almacenados en caché solo después de ejecutar DBCC FREEPROCCACHE (<pool_name>)
, donde <pool_name>
es el nombre de un grupo de recursos del regulador de recursos.
AFFINITY
de varios programadores a un único programador, no es necesario ejecutar DBCC FREEPROCCACHE
porque los planes paralelos se pueden ejecutar en modo serie. Sin embargo, este plan podría ser menos eficaz que un plan compilado como un plan serie.AFFINITY
de un único programador a varios programadores, no es necesario ejecutar DBCC FREEPROCCACHE
. Sin embargo, los planes serie no se pueden ejecutar en paralelo, por lo que borrar la caché respectiva permite que los nuevos planes se compilen potencialmente mediante paralelismo.Advertencia
Borrar los planes almacenados en caché de un grupo de recursos asociado a más de un grupo de cargas de trabajo afecta a todos los grupos de cargas de trabajo mediante el grupo de recursos definido por el usuario identificado por <pool_name>
.
Requiere el permiso CONTROL SERVER
.
En el ejemplo siguiente se mantiene toda la configuración actual del grupo de recursos para el grupo de default
, excepto para MAX_CPU_PERCENT
, que se cambia al 25 por ciento.
ALTER RESOURCE POOL [default] WITH (MAX_CPU_PERCENT = 25);
ALTER RESOURCE GOVERNOR RECONFIGURE;
En el ejemplo siguiente se modifica el grupo de recursos de adhocPool
de la siguiente manera:
MIN_CPU_PERCENT
y MIN_MEMORY_PERCENT
respectivamente.MAX_MEMORY_PERCENT
.MAX_CPU_PERCENT
y CAP_CPU_PERCENT
respectivamente.AFFINITY SCHEDULER
.Válido para : SQL Server 2012 (11.x) y versiones posteriores.
ALTER RESOURCE POOL adhocPool
WITH (
MIN_CPU_PERCENT = 10,
MAX_CPU_PERCENT = 20,
CAP_CPU_PERCENT = 30,
MIN_MEMORY_PERCENT = 5,
MAX_MEMORY_PERCENT = 15,
AFFINITY SCHEDULER = (0 TO 63, 128 TO 191)
);
ALTER RESOURCE GOVERNOR RECONFIGURE;
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoy