Resource GovernorResource Governor

Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed InstanceПрименимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed Instance

SQL ServerSQL Server Resource Governor — это компонент, предназначенный для управления рабочей нагрузкой SQL ServerSQL Server и использованием системных ресурсов.Resource Governor is a feature that you can use to manage SQL ServerSQL Server workload and system resource consumption. Resource Governor позволяет задать ограничения на объем ресурсов ЦП, памяти и количество физических операций ввода-вывода, которые могут использоваться для входящих запросов приложений.Resource Governor enables you to specify limits on the amount of CPU, physical I/O, and memory that incoming application requests can use.

Преимущества регулятора ресурсовBenefits of Resource Governor

Регулятор ресурсов позволяет управлять рабочими нагрузками и ресурсами SQL ServerSQL Server путем задания лимитов на потребление ресурсов входящими запросами.Resource Governor enables you to manage SQL ServerSQL Server workloads and resources by specifying limits on resource consumption by incoming requests. В контексте регулятора ресурсов рабочая нагрузка представляет собой набор запросов приблизительно одинакового размера, которые могут и должны обрабатываться как единая сущность.In the Resource Governor context, workload is a set of similarly sized queries or requests that can, and should be, treated as a single entity. Это не жесткое требование, но чем однообразнее выглядит шаблон использования ресурсов рабочей нагрузки, тем больше преимуществ можно извлечь из регулятора ресурсов.This is not a requirement, but the more uniform the resource usage pattern of a workload is, the more benefit you are likely to derive from Resource Governor. Ограничения на ресурсы можно перенастроить в режиме реального времени, при этом воздействие на выполняемую рабочую нагрузку остается минимальным.Resource limits can be reconfigured in real time with minimal impact on workloads that are executing.

В среде, имеющей несколько различных рабочих нагрузок на одном и том же сервере, регулятор ресурсов позволяет различать эти рабочие нагрузки и распределять общие ресурсы по мере запросов в зависимости от установленных ограничений.In an environment where multiple distinct workloads are present on the same server, Resource Governor enables you to differentiate these workloads and allocate shared resources as they are requested, based on the limits that you specify. Эти ресурсы — ЦП, память и физические операции ввода-вывода.These resources are CPU, physical I/O, and memory.

С помощью регулятора ресурсов можно выполнить следующее.By using Resource Governor, you can:

  • Обеспечить облуживание многих клиентов и изоляцию ресурсов на одиночных экземплярах SQL Server, обслуживающих несколько клиентских рабочих нагрузок.Provide multitenancy and resource isolation on single instances of SQL Server that serve multiple client workloads. То есть можно разделить доступные ресурсы сервера среди рабочих нагрузок, минимизировав проблемы, которые могут возникнуть при конкуренции рабочих нагрузок за ресурсы.That is, you can divide the available resources on a server among the workloads and minimize the problems that can occur when workloads compete for resources.

  • Предоставить прогнозируемую производительность и поддержку соглашений об уровне обслуживания для клиентов рабочих нагрузок в среде с несколькими рабочими нагрузками и несколькими пользователями.Provide predictable performance and support SLAs for workload tenants in a multi-workload and multi-user environment.

  • Изолировать и ограничивать неконтролируемые запросы и регулировать ресурсы ввода-вывода для таких операций, как DBCC CHECKDB, способных занять всю производительность подсистемы ввода-вывода и негативно повлиять на другие рабочие нагрузки.Isolate and limit runaway queries or throttle I/O resources for operations such as DBCC CHECKDB that can saturate the I/O subsystem and negatively impact other workloads.

  • Добавить детализированное отслеживание ресурсов для возврата платежей за использование ресурсов и предоставлять прогнозируемое выставление счетов потребителям ресурсов сервера.Add fine-grained resource tracking for resource usage chargebacks and provide predictable billing to the consumers of the server resources.

Ограничения регулятора ресурсовResource Governor Constraints

В данном выпуске регулятора ресурсов имеются следующие ограничения.This release of Resource Governor has the following constraints:

  • Управление ресурсами ограничено компонентом Компонент SQL Server Database EngineSQL Server Database Engine.Resource management is limited to the Компонент SQL Server Database EngineSQL Server Database Engine. Использование Resource Governor для Службы Analysis ServicesAnalysis Services, Службы Integration ServicesIntegration Services и Службы Reporting ServicesReporting Services невозможно.Resource Governor cannot be used for Службы Analysis ServicesAnalysis Services, Службы Integration ServicesIntegration Services, and Службы Reporting ServicesReporting Services.

  • Наблюдение за рабочей нагрузкой и управление рабочими нагрузками между экземплярами SQL ServerSQL Server не предусмотрены.There is no workload monitoring or workload management between SQL ServerSQL Server instances.

  • Управление рабочими нагрузками OLTP с помощью регулятора ресурсов возможно, но данные типы запросов, как правило, непродолжительные, не всегда находятся в ЦП настолько долго, чтобы к ним можно было применить средства управления пропускной способностью.Resource Governor can manage OLTP workloads but these types of queries, which are typically very short in duration, are not always on the CPU long enough to apply bandwidth controls. Это может привести к искажению возвращаемых статистических данных по загрузке ЦП.This may skew in the statistics returned for CPU usage percent.

  • Возможность администрирования физического ввода-вывода относится только к операциям пользователя, но не к задачам системы.The ability to govern physical I/O only applies to user operations and not system tasks. К системным задачам относятся операции записи в журнал транзакций и операции отложенного ввода-вывода модуля отложенной записи.System tasks include write operations to the transaction log and Lazy Writer I/O operations. Resource Governor работает главным образом с пользовательскими операциями чтения, так как большинство операций записи обычно выполняются системными задачами.The Resource Governor applies primarily to user read operations because most write operations are typically performed by system tasks.

  • Нельзя задать пороговые значения ввода-вывода на внутреннем пуле ресурсов.You cannot set I/O thresholds on the internal resource pool.

Основные понятия ресурсовResource Concepts

Приведенные ниже три понятия лежат в основе понимания работы регулятора ресурсов.The following three concepts are fundamental to understanding and using Resource Governor:

  • Пулы ресурсов.Resource pools. Пул ресурсов представляет физические ресурсы сервера.A resource pool, represents the physical resources of the server. Пул можно считать виртуальным экземпляром SQL ServerSQL Server внутри экземпляра SQL ServerSQL Server .You can think of a pool as a virtual SQL ServerSQL Server instance inside of a SQL ServerSQL Server instance. При установке SQL ServerSQL Server создается два пула ресурсов (внутренний и по умолчанию).Two resource pools (internal and default) are created when SQL ServerSQL Server is installed. Кроме того, регулятор ресурсов поддерживает определяемые пользователями пулы ресурсов.Resource Governor also supports user-defined resource pools. Дополнительные сведения см. в разделе Resource Governor Resource Pool.For more information, see Resource Governor Resource Pool.

  • Группы рабочей нагрузки.Workload groups. Группа рабочей нагрузки выступает в качестве контейнера для запросов сеансов, имеющих подобные критерии классификации.A workload group serves as a container for session requests that have similar classification criteria. Рабочая нагрузка обеспечивает статистический мониторинг сеансов и определяет политики для сеансов.A workload allows for aggregate monitoring of the sessions, and defines policies for the sessions. Каждая группа рабочей нагрузки существует в пуле ресурсов.Each workload group is in a resource pool. При установке SQL ServerSQL Server создается две группы рабочей нагрузки (внутренняя и по умолчанию), которые сопоставляются с соответствующими пулами ресурсов.Two workload groups (internal and default) are created and mapped to their corresponding resource pools when SQL ServerSQL Server is installed. Кроме того, регулятор ресурсов поддерживает определяемые пользователями группы рабочей нагрузки.Resource Governor also supports user-defined workload groups. Дополнительные сведения см. в разделе Resource Governor Workload Group.For more information see, Resource Governor Workload Group.

  • Классификация.Classification. Процесс классификации назначает входящие сеансы группе рабочей нагрузки с учетом характеристик сеанса.The Classification process assigns incoming sessions to a workload group based on the characteristics of the session. Логику классификации можно адаптировать путем написания определяемой пользователем функции, называемой функцией-классификатором.You can tailor the classification logic by writing a user-defined function, called a classifier function. Кроме того, регулятор ресурсов поддерживает определяемую пользователем функцию-классификатор для реализации правил классификации.Resource Governor also supports a classifier user-defined function for implementing classification rules. Дополнительные сведения см. в разделе Resource Governor Classifier Function.For more information, see Resource Governor Classifier Function.

Примечание

Регулятор ресурсов никак не управляет выделенным административным соединением.Resource Governor does not impose any controls on a dedicated administrator connection (DAC). Нет необходимости классифицировать запросы выделенного административного соединения, которые выполняются во внутренней группе рабочей нагрузки и пуле ресурсов.There is no need to classify DAC queries, which run in the internal workload group and resource pool.

В контексте регулятора ресурсов можно обрабатывать описанные выше понятия как компоненты.In the context of Resource Governor, you can treat the preceding concepts as components. На следующей иллюстрации показаны эти компоненты и отношения между ними в среде компонента Database Engine.The following illustration shows these components and their relationship with each other as they exist in the database engine environment. С точки зрения обработки упрощенный поток выглядит следующим образом.From a processing perspective, the simplified flow is as follows:

  • Имеется входящее соединение с сеансом (сеанс 1 из n).There is an incoming connection for a session (Session 1 of n).

  • Сеанс классифицирован (классификация).The session is classified (Classification).

  • Рабочая нагрузка сеанса направляется в группу рабочей нагрузки, например в группу 4.The session workload is routed to a workload group, for example, Group 4.

  • Группа рабочей нагрузки использует пул ресурсов, с которым она связана, например Пул 2.The workload group uses the resource pool it is associated with, for example, Pool 2.

  • Пул ресурсов предоставляет или ограничивает доступ к ресурсам, которые требуются приложению, например Приложению 3.The resource pool provides and limits the resources required by the application, for example, Application 3.

Функциональные компоненты регулятора ресурсовResource Governor Functional Components

Задачи регулятора ресурсовResource Governor Tasks

Описание задачиTask Description РазделTopic
Описывает, как включить регулятор ресурсов.Describes how to enable Resource Governor. Включение регулятора ресурсовEnable Resource Governor
Описывает, как отключить регулятор ресурсов.Describes how to disable Resource Governor. Отключение регулятора ресурсовDisable Resource Governor
Описывает, как создать, изменить и удалить пул ресурсов.Describes how to create, alter, and drop a resource pool. Пул ресурсов регулятора ресурсовResource Governor Resource Pool
Описывает, как создать, изменить, переместить и удалить группу рабочей нагрузкиDescribes how to create, alter, move, and drop a workload group. Группа рабочей нагрузки регулятора ресурсовResource Governor Workload Group
Описывает, как создать и проверить определяемую пользователем функцию-классификатор.Describes how to create and test a classifier user-defined function. Функция-классификатор регулятора ресурсовResource Governor Classifier Function
Описывает, как настроить регулятор ресурсов с использованием шаблона.Describes how to configure Resource Governor using a template. Настройка регулятора ресурсов с помощью шаблонаConfigure Resource Governor Using a Template
Описывает, как просматривать свойства регулятора ресурсов.Describes how to view Resource Governor properties. Просмотр свойств регулятора ресурсовView Resource Governor Properties

См. также:See Also

Экземпляры компонента Database Engine (SQL Server)Database Engine Instances (SQL Server)