ALTER EXTERNAL RESOURCE POOL (Transact-SQL)

Область применения: SQL Server 2016 (13.x) и более поздних версий Управляемый экземпляр SQL Azure

Изменяет внешний пул Resource Governor, указывающий ресурсы, которые могут использоваться внешними процессами.

Для служб R (в базе данных) в SQL Server 2016 (13.x), внешний пул управляет rterm.exe, BxlServer.exe и всеми порожденными ими процессами.

Для Служб машинного обучения внешний пул управляет rterm.exe, python.exe, BxlServer.exe и другими процессами, порожденными ими.

Соглашения о синтаксисе Transact-SQL

Синтаксис

ALTER EXTERNAL RESOURCE POOL { pool_name | "default" }
[ WITH (
    [ MAX_CPU_PERCENT = value ]
    [ [ , ] MAX_MEMORY_PERCENT = value ]
    [ [ , ] MAX_PROCESSES = value ]
    )
]
[ ; ]

<CPU_range_spec> ::=
{ CPU_ID | CPU_ID  TO CPU_ID } [ ,...n ]

ALTER EXTERNAL RESOURCE POOL { pool_name | "default" }
[ WITH (
   [ MAX_CPU_PERCENT = value ]
   [ [ , ] AFFINITY CPU =
           {
               AUTO
             | ( <cpu_range_spec> )
             | NUMANODE = (( <NUMA_node_id> )
           } ]   
   [ [ , ] MAX_MEMORY_PERCENT = value ]
   [ [ , ] MAX_PROCESSES = value ]
   )
]
[ ; ]

<CPU_range_spec> ::=
{ CPU_ID | CPU_ID  TO CPU_ID } [ ,...n ]

Примечание.

Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.

Аргументы

{ pool_name | "default" }
Имя существующего определяемого пользователем внешнего пула ресурсов или внешнего пула ресурсов по умолчанию, создаваемого при установке SQL Server. Если слово "default" используется с инструкцией ALTER EXTERNAL RESOURCE POOL, оно должно быть заключено в кавычки ("") или квадратные скобки ([]) во избежание конфликта с системным зарезервированным словом DEFAULT.

MAX_CPU_PERCENT =value
Указывает максимальную среднюю пропускную способность ЦП для всех запросов во внешнем пуле ресурсов при возникновении состязания за ресурсы ЦП. value — целое число. Диапазон допустимых значений для value — от 1 до 100.

MAX_MEMORY_PERCENT = значение
Указывает общий объем памяти сервера, который может использоваться для запросов в данном внешнем пуле ресурсов. value — целое число. Диапазон допустимых значений для value — от 1 до 100.

MAX_PROCESSES =value
Указывает максимально допустимое количество процессов для внешнего пула ресурсов. Укажите 0, чтобы задать неограниченный порог для пула, который впоследствии ограничивается только ресурсами компьютера.

MAX_CPU_PERCENT =value
Указывает максимальную среднюю пропускную способность ЦП для всех запросов во внешнем пуле ресурсов при возникновении состязания за ресурсы ЦП. value — целое число. Диапазон допустимых значений для value — от 1 до 100.

AFFINITY {CPU = AUTO | ( <CPU_range_spec> ) | NUMANODE = (<NUMA_node_range_spec>)}
Подключает внешний пул ресурсов к конкретным ЦП.

AFFINITY CPU = (<CPU_range_spec>) Сопоставляет внешний пул ресурсов с ЦП SQL Server, заданными с помощью CPU_ID. При использовании AFFINITY NUMANODE = (<NUMA_node_range_spec>) внешний пул ресурсов сопоставляется с физическими процессорами SQL Server, соответствующими данному узлу NUMA или диапазону узлов.

MAX_MEMORY_PERCENT = значение
Указывает общий объем памяти сервера, который может использоваться для запросов в данном внешнем пуле ресурсов. value — целое число. Диапазон допустимых значений для value — от 1 до 100.

MAX_PROCESSES =value
Указывает максимально допустимое количество процессов для внешнего пула ресурсов. Укажите 0, чтобы задать неограниченный порог для пула, который впоследствии ограничивается только ресурсами компьютера.

Замечания

Ядро СУБД реализует пул ресурсов при выполнении инструкции ALTER RESOURCE GOVERNOR RECONFIGURE.

Общие сведения о пулах ресурсов см. в статьях Пул ресурсов регулятора ресурсов, sys.resource_governor_external_resource_pools (Transact-SQL) и sys.dm_resource_governor_external_resource_pool_affinity (Transact-SQL).

Сведения об использовании внешних пулов ресурсов для управления заданиями машинного обучения см. в статье Resource governance for machine learning in SQL Server (Управление ресурсами для машинного обучения в SQL Server).

Разрешения

Требуется разрешение CONTROL SERVER.

Примеры

Следующая инструкция изменяет внешний пул, ограничивая загрузку ЦП 50 процентами, а максимальный объем памяти — 25 процентами доступной памяти на компьютере.

ALTER EXTERNAL RESOURCE POOL ep_1
WITH (
    MAX_CPU_PERCENT = 50
    , MAX_MEMORY_PERCENT = 25
);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO
ALTER EXTERNAL RESOURCE POOL ep_1
WITH (
    MAX_CPU_PERCENT = 50
    , AFFINITY CPU = AUTO
    , MAX_MEMORY_PERCENT = 25
);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO

См. также