Microsoft SQL Server
Губернатор ресурсов
Поиск…
замечания
Resource Governor в SQL Server - это функция, которая позволяет вам управлять использованием ресурсов различными приложениями и пользователями. Он запускается в реальном времени, устанавливая пределы ЦП и памяти. Это поможет предотвратить то, что один тяжелый процесс будет потреблять все системные ресурсы, в то время как к ним ждут более мелкие задачи.
Доступно только в Enterprise Editions
Чтение статистики
select *
from sys.dm_resource_governor_workload_groups
select *
from sys.dm_resource_governor_resource_pools
Создание пула для adhoc-запросов
Сначала создайте пул ресурсов, кроме стандартного
CREATE RESOURCE POOL [PoolAdhoc] WITH(min_cpu_percent=0,
max_cpu_percent=50,
min_memory_percent=0,
max_memory_percent=50)
GO
Создание рабочей группы для пула
CREATE WORKLOAD GROUP [AdhocMedium] WITH(importance=Medium) USING [PoolAdhoc]
Создайте функцию, которая содержит логику для регулятора ресурса и приложите его
create function [dbo].[ufn_ResourceGovernorClassifier]()
returns sysname with schemabinding
as
begin
return CASE
WHEN APP_NAME() LIKE 'Microsoft Office%' THEN 'AdhocMedium' -- Excel
WHEN APP_NAME() LIKE 'Microsoft SQL Server Management Studio%' THEN 'AdhocMedium' -- Adhoc SQL
WHEN SUSER_NAME() LIKE 'DOMAIN\username' THEN 'AdhocMedium' -- Ssis
ELSE 'default'
END
end
GO
alter resource governor
with (classifier_function = dbo.ufn_ResourceGovernorClassifier)
GO
alter resource governor reconfigure
GO
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow