Регулятор ресурсов в SQL Server 2012

advertisement
Регулятор ресурсов в SQL Server 2012
Техническая статья по SQL Server
Автор: Гай Бауэрман (Guy Bowerman)
Технические рецензенты: Джим ван де Эрв (Jim van de Erve), Линдси Аллен
(Lindsey Allen), Мадхан Арумугам Рамакришнан (Madhan Arumugam Ramakrishnan),
Син Тин (Xin Jin)
Опубликовано: июль 2012 г.
Область применения: SQL Server 2012
Сводка. В регулятор ресурсов информационной платформы SQL Server 2012 были
внесены улучшения, отражающие растущую потребность в централизованно
управляемых службах Database Services, используемых для обеспечения
мультитенатности клиентам, которым требуются изолированные рабочие нагрузки.
В этом документе описаны эти улучшения, а также причины их внедрения. Также в него
включено автономное пошаговое руководство, которое можно использовать для
ознакомления с этими новыми возможностями.
Авторские права
Документ предоставляется «как есть». Сведения и мнения, содержащиеся в этом документе,
включая URL-адреса, а также ссылки на другие веб-сайты, могут изменяться без предварительного
уведомления. Вы принимаете на себя риск, связанный с использованием данного документа.
Этот документ не предоставляет пользователям права интеллектуальной собственности на какиелибо продукты Майкрософт. Разрешается копирование и использование документа в справочных
целях, для внутреннего использования.
© Корпорация Майкрософт (Microsoft Corporation), 2012. Все права защищены.
2
Содержание
Введение ...................................................................................................................................................... 4
Новые функции регулятора ресурсов в SQL Server 2012.......................................................................... 5
Зачем изменять регулятор ресурсов? ................................................................................................... 5
Сводка новых функций ........................................................................................................................... 6
Пример использования изоляции рабочих нагрузок .............................................................................. 6
Часть 1. Первоначальная настройка — создание пользователей и рабочих нагрузок..................... 7
Часть 2. Настройка регулятора ресурсов ............................................................................................... 8
Часть 3. Выполнение рабочей нагрузки ................................................................................................ 9
Часть 4. Мониторинг ............................................................................................................................... 9
Часть 5. Конкурирующие рабочие нагрузки ....................................................................................... 11
Рекомендации ........................................................................................................................................... 18
Устранение неполадок ............................................................................................................................. 19
Заключение ................................................................................................................................................ 20
Ссылки .................................................................................................................................................... 20
3
Введение
Регулятор ресурсов SQL Server был внедрен в выпуске Enterprise Microsoft SQL Server 2008 для
обеспечения мультитенантности и изоляции ресурсов в отдельных экземплярах SQL Server,
обслуживающих несколько клиентских рабочих нагрузок. Регулятор ресурсов позволяет
накладывать ограничения на тот объем памяти и ресурсов ЦП, который может быть использован
входящими запросами. Данный компонент также предоставляет возможность локализовывать
и ограничивать неконтролируемые запросы, добавлять детализированное отслеживание ресурсов
с целью обеспечения возвратных платежей и формировать прогнозируемую производительность.
Дополнительные сведения об этом компоненте см. в разделе Регулятор ресурсов
(http://msdn.microsoft.com/library/bb933866.aspx) в электронной документации по SQL Server.
В SQL Server 2012 можно обеспечивать более полную изоляцию ресурсов ЦП для рабочих нагрузок
и накладывать ограничения на использование ресурсов ЦП, что позволит обеспечить больший
уровень предсказуемости. Вы также можете управлять выделением большей части памяти
в SQL Server.
Пулы ресурсов, группы рабочей нагрузки и классификация
В качестве базовой реализации изоляции ресурсов в экземпляре SQL Server в регулятор ресурсов
SQL Server было введено понятие пулов ресурсов. Управление пулами ресурсов осуществляется
с помощью языка Transact-SQL и других интерфейсов управления, например SMO. С помощью
инструкций CREATE RESOURCE POOL и ALTER RESOURCE POOL им можно назначать минимальные
и максимальные объемы ресурсов ЦП и памяти.
SQL Server 2012 поддерживает до 62 определяемых пользователем пулов (в версии SQL Server
2008 поддерживалось всего лишь 18 пулов). Также существует два встроенных пула ресурсов:
один из них, называемый внутренним, зарезервирован для системных задач и не может
настраиваться пользователем, другой пул (пул по умолчанию), параметры которого можно
настраивать, по умолчанию используется для выполнения рабочих нагрузок.
Каждый пользовательский пул ресурсов может быть связан с одной или несколькими группами
рабочих нагрузок, которые являются логическими сущностями, представляющими одну или
несколько клиентских рабочих нагрузок. Входящие сеансы могут быть сопоставлены с этими
группами рабочих нагрузок с помощью определяемой пользователем функции Classifier, которая
выполняется после входа в систему и может вызвать системные функции для оценки различных
свойств входа, например имени пользователя, имени рабочей станции или имени базы данных.
На следующей диаграмме показана совместная работа этих компонентов для классификации
и распределения входящих подключений по различным пулам ресурсов.
4
Рис. 1. Классификация сеансов регулятора ресурсов
Дополнительные сведения, включая полное и подробное введение в возможности регулятора
ресурсов в SQL Server 2008 и SQL Server 2008 R2, см. в техническом документе Использование
регулятора ресурсов (http://msdn.microsoft.com/library/ee151608.aspx), авторами которого
являются Аарон Бертран (Aaron Bertrand) и Борис Барышников (Boris Baryshnikov).
В этой статье рассматриваются новые возможности, появившиеся в SQL Server 2012, обсуждаются
причины, послужившие их внедрению, а также описываются методы их использования.
Новые функции регулятора ресурсов в SQL Server 2012
Зачем изменять регулятор ресурсов?
По мере увеличения количества ядер ЦП на каждый сокет и снижения стоимости больших
компьютеров от партнеров, предоставляющих услуги размещения и использующих регулятор
ресурсов для изоляции ресурсов SQL Server для своих клиентов, мы стали слышать комментарии
следующего характера. «Новые стандартные серверы часто имеют 10 или 12 ядер в каждом
ЦП, в силу чего процессорные ресурсы часто простаивают на серверах, поскольку их
использование ограничивается максимальным числом пулов». Поставщикам услуг размещения,
которые с помощью SQL Server хотят предоставлять клиентам экономичные варианты
использования базы данных как услуги, требуется дополнительная гибкость. Это нужно им для
того, чтобы разделять ресурсы, доступные на больших компьютерах, между рабочими нагрузками,
а также сводить к минимуму проблемы, возникающие, когда рабочие нагрузки конкурируют
друг с другом за ресурсы и одна рабочая нагрузка имеет отрицательное влияние на ресурсы,
доступные какой-либо другой рабочей нагрузке (так называемая проблема «шумного соседа»).
5
По мере роста мощности компьютеров и возможностей программного обеспечения
виртуализации количество и размер экземпляров SQL Server, виртуализируемых и управляемых
в частных облаках, увеличивается. В результате важность обеспечения более эффективной
изоляции для пользователей общих ресурсов возрастает. Во избежание возникновения проблемы
«шумного соседа» рабочие нагрузки в экземпляре SQL Server необходимо выполнять на
секционированных ресурсах.
Другая тенденция, которую мы отмечаем, — это рост объема возвратных платежей за
использование ресурсов. Отслеживание и выставление счетов за использование внутренних
ресурсов как для предприятий, так и для открытых поставщиков услуг размещения
распространяется все шире, в связи с чем возникает необходимость обеспечивать
прогнозируемое формирование счетов для потребителей этих ресурсов.
Сводка новых функций
Для удовлетворения этих потребностей в SQL Server 2012 были добавлены следующие функции.
-
-
-
Максимальное число пулов ресурсов было увеличено с 20 до 64, что позволило
секционировать большие компьютеры между большим числом рабочих нагрузок.
В пулы ресурсов был добавлен параметр CAP_CPU_PERCENT, позволяющий задавать
жесткое ограничение на использование ресурсов ЦП, что гарантирует большую
предсказуемость.
В пулы ресурсов был добавлен параметр AFFINITY, который позволяет привязывать
отдельные пулы ресурсов к одному или нескольким планировщикам и узлам NUMA,
обеспечивая более высокую степень изоляции ресурсов ЦП.
В дополнение к выделению отдельных страниц была добавлена возможность управления
выделением нескольких страниц в диспетчере памяти SQL Server. Это является результатом
значительной модернизации SQL Server 2012, в результате которой диспетчер памяти стал
центральным интерфейсом операционной системы для выделения страниц. Дополнительные
сведения об изменениях в диспетчере памяти см. в блоге группы разработчиков SQLOS
и инфраструктуры облака (http://blogs.msdn.com/b/sqlosteam/).
Чтобы проиллюстрировать новые функции управления ресурсами и методы их использования,
ниже приводится простая демонстрация изоляции рабочих нагрузок в действии.
Пример использования изоляции рабочих нагрузок
В этом сценарии вы размещаете у себя частное облако и используете централизованную
службу Database Services, которая поддерживает два отдела: отдел продаж и отдел маркетинга.
Эти отделы используют одну и ту же базу данных в двух рабочих нагрузках, интенсивно
использующих ресурсы ЦП. Для отслеживания затрат выполняется отслеживание ресурсов,
используемых каждым отделом. После этого отделам выставляются индивидуальные счета за
использованные ими ресурсы ЦП.
6
Обоим отделам необходима прогнозируемая производительность запросов. Отделу продаж
необходим постоянный доступ к нужным ресурсам, в идеале этот отдел должен работать в
изоляции, всегда имея доступ к 100 процентам выделенной ему мощности ЦП. Однако в то
же время пользователям из этого отдела приходится использовать экземпляр базы данных
совместно с другими отделами. Запросы же отдела маркетинга имеют более низкий приоритет.
Прогнозируемая производительность необходима им в той же степени, но при фиксированном
бюджете, выделенном для оплаты ресурсов.
Ваша задача — обеспечить в этой среде изоляцию рабочих нагрузок, прогнозируемую
производительность и прогнозируемое выставление счетов.
Примечание. Чтобы яснее показать работу новых функций, в этом пошаговом руководстве
основное внимание уделяется ресурсам ЦП. В нем не рассматривается управление памятью,
которое также может осуществляться с помощью регулятора ресурсов SQL Server.
Следующее пошаговое руководство можно рассматривать как обучающую инструкцию. Чтобы
выполнить его самостоятельно, запустите компьютер или виртуальную машину (на которую
установлен выпуск SQL Server 2012 Enterprise, Evaluation или Developer), имеющую два ядра ЦП.
Часть 1. Первоначальная настройка — создание пользователей и рабочих
нагрузок
Сначала следует создать имена входа пользователей для рабочих нагрузок отделов продаж
и маркетинга. (Подразумевается, что для этого экземпляра был включен режим смешанной
проверки подлинности SQL Server как свойство экземпляра.)
CREATE
CREATE
CREATE
CREATE
GO
LOGIN Sales WITH PASSWORD = 'UserPwd', CHECK_POLICY = OFF
LOGIN Marketing WITH PASSWORD = 'UserPwd', CHECK_POLICY = OFF
USER Sales FOR LOGIN Sales;
USER Marketing FOR LOGIN Marketing;
Первая часть руководства показывает, как рабочие нагрузки могут соревноваться друг с другом
за время ЦП, поэтому перед запуском регулятора ресурсов свяжите SQL Server с одним ЦП,
чтобы всем рабочим нагрузкам приходилось совместно использовать один ЦП.
sp_configure 'show advanced', 1
GO
RECONFIGURE
GO
sp_configure 'affinity mask'. 1
GO
RECONFIGURE
GO
7
Часть 2. Настройка регулятора ресурсов
С помощью регулятора ресурсов SQL Server рабочие нагрузки отделов продаж и маркетинга
будут сопоставлены с отдельными пулами ресурсов. Это позволит индивидуально отслеживать
использование ими ресурсов с помощью системного монитора. Однако на этом начальная
настройка регулятора ресурсов завершается. На этом этапе ресурсы ЦП не будут выделены пулам
ресурсов, поэтому пользователи не смогут увидеть разницы между работой с использованием
регулятора ресурсов и без него.
1. Создайте пулы ресурсов.
CREATE RESOURCE POOL SalesPool
CREATE RESOURCE POOL MarketingPool
2. Создайте группы рабочих нагрузок.
CREATE WORKLOAD GROUP SalesGroup
USING SalesPool
CREATE WORKLOAD GROUP MarketingGroup
USING MarketingPool
GO
3. Создайте функцию-классификатор, которая будет активироваться при подключении
пользователя. Функция связывает подключение с определенной группой рабочих
нагрузок с учетом имени входа пользователя, устанавливающего подключение
(то есть определяется, относится имя входа к отделу продаж или отделу маркетинга).
CREATE FUNCTION CLASSIFIER_V1()
RETURNS SYSNAME WITH SCHEMABINDING
BEGIN
DECLARE @val varchar(32)
SET @val = 'default';
IF 'Sales' = SUSER_SNAME()
SET @val = 'SalesGroup';
ELSE IF 'Marketing' = SUSER_SNAME()
SET @val = 'MarketingGroup';
RETURN @val;
END
GO
ALTER RESOURCE GOVERNOR
WITH (CLASSIFIER_FUNCTION = dbo.CLASSIFIER_V1)
GO
4. Теперь активируем регулятор ресурсов.
ALTER RESOURCE GOVERNOR RECONFIGURE
GO
8
Часть 3. Выполнение рабочей нагрузки
Следующий простой цикл демонстрирует рабочую нагрузку, интенсивно использующую ЦП,
что позволяет четко показать результаты применения регулятора ресурсов. То есть он заставляет
ЦП выполнять работу, не отвлекаясь на другие задачи.
SET NOCOUNT ON
DECLARE @i INT
DECLARE @s VARCHAR(100)
SET @i = 100000000
WHILE @i > 0
BEGIN
SELECT @s = @@version;
SET @i = @i - 1;
END
Если сохранить этот цикл в виде файла с именем workload.sql, то можно будет запустить рабочую
нагрузку отдела продаж в командной строке следующим образом.
start sqlcmd -S localhost -U Sales -P UserPwd -i "workload.sql"
При выполнении этой рабочей нагрузки загрузка ЦП для SQL Server возрастет сразу до
100 процентов ресурсов на одно ядро, к которому привязан SQL Server.
Часть 4. Мониторинг
Можно отслеживать использование ресурсов пулом с помощью системного монитора.
Актуальный счетчик производительности:
SQLServer:Статистика пула ресурсов->Загрузка ЦП
Можно добавить счетчики для отслеживания всех отдельных пулов с помощью диалогового окна
Добавление счетчиков.
9
Обратите внимание, что на компьютере с двумя ЦП, если SQL Server сопоставлен с одним ЦП,
загрузка ЦП пулом отдела продаж подобным же образом возрастет на диаграмме максимум
до 50 процентов (то есть 100 процентов от одного ЦП).
10
Поэтому каждый раз, когда в этом руководстве будут появляться счетчики в виде диаграмм,
их значение необходимо будет удваивать для получения процента использования ЦП одного ядра.
Часть 5. Конкурирующие рабочие нагрузки
Добавьте еще одну рабочую нагрузку для представления отдела маркетинга.
start sqlcmd -S localhost -U Marketing -P UserPwd -i "workload.sql"
Теперь две рабочие нагрузки конкурируют и ресурсы ЦП разбиваются равномерно между пулами
ресурсов отдела продаж (зеленый) и отдела маркетинга (красный).
11
Поскольку запросы отдела продаж имеют приоритет, можно обеспечить выделение им большего
объема ресурсов ЦП, настроив пул ресурсов отдела продаж и установив минимальное значение
ЦП. Для пула отдела продаж установите это значение равным 70.
ALTER RESOURCE POOL SalesPool
WITH (MIN_CPU_PERCENT = 70)
GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO
Теперь рабочая нагрузка отдела продаж явно получает больше ресурсов ЦП (примерно 70 процентов
одного ЦП), в то время как рабочая нагрузка отдела маркетинга получает примерно 30 процентов.
12
В случае если обе рабочие нагрузки подобным образом максимально используют один ЦП,
планировщику SQL Server все еще сложно разделять работу на пропорциональные доли
и предоставлять рабочей нагрузке отдела продаж ровно 70 процентов или более ресурсов ЦП.
Далее в этом документе будет обсуждаться новая функция ― «сходство планировщика»,
позволяющая изолировать рабочие нагрузки для отдельных планировщиков или групп
планировщиков. Однако, чтобы показать, как можно использовать регулятор ресурсов для
разбиения рабочих нагрузок, выполняющихся на одном процессоре либо на нескольких
совместно используемых процессорах, предположим, что число процессоров ограниченно
и этим рабочим нагрузкам необходимо совместное использование одного планировщика,
выполняющегося на одном ЦП. Рабочую нагрузку отдела продаж можно приблизить к 70 процентам,
задав максимальное значение в 30 процентов для пула отдела маркетинга. Значение
MAX_CPU_PERCENT показывает планировщику, как следует выделять ресурсы при возникновении
конфликтов между рабочими нагрузками.
ALTER RESOURCE POOL MarketingPool
WITH (MAX_CPU_PERCENT = 30)
GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO
Теперь разбиение ресурсов ЦП гораздо ближе к нужному соотношению в 70/30.
13
Но что произойдет с рабочей нагрузкой отдела маркетинга, если рабочая нагрузка отдела
продаж снизится или остановится? Останется ли она на максимальном значении в 30 процентов?
На следующем рисунке показаны результаты такого изменения.
14
Мы видим, что нет. Параметр MAX_CPU_PERCENT — это конъюнктурный максимум. Если
доступны ресурсы ЦП, рабочая нагрузка будет использовать до 100 процентов этих ресурсов.
Значение «максимум» применяется только при возникновении конкуренции за ресурсы ЦП,
поэтому, если рабочая нагрузка отдела продаж будет отключена, рабочая нагрузка отдела
маркетинга станет использовать 100 процентов ресурсов ЦП.
Во многих случаях эта ситуация предпочтительнее, поскольку простои ЦП обычно нежелательны.
Но поскольку в этом случае с отдела маркетинга взимается плата за использование ресурсов, а им
требуется уложиться в отведенный бюджет, использовать больше 30 процентов ресурсов ядра
нежелательно. Предположим, необходимо зарезервировать ресурсы для других рабочих нагрузок
и всегда поддерживать рабочую нагрузку отдела маркетинга в районе 30 процентов или ниже.
Это можно сделать с помощью новой функции регулятора ресурсов в Microsoft SQL Server 2012 —
параметра CAP_CPU_PERCENT пула ресурсов, который задает жесткое ограничение на использование
ЦП. Установите жесткое ограничение в 30 процентов для пула отдела маркетинга.
ALTER RESOURCE POOL MarketingPool
WITH (CAP_CPU_PERCENT=30)
GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO
15
Теперь кривая использования ресурсов ЦП для пула отдела маркетинга выравнивается
и больше не превышает показатель в 30 процентов. А значит, и затраты отдела маркетинга
на использование ресурсов процессора можно легко прогнозировать.
Предположим, что отделу продаж необходима большая изоляция, а также выделение им 100 %
ресурсов одного ядра ЦП в любое время. Они могут воспользоваться другим новым регулятором
ресурсов SQL Server 2012 — сходством планировщика. Чтобы продемонстрировать работу этой
функции, удалите маску сходства, примененную к SQL Server, и дайте возможность ядру SQL Server
использовать оба процессора компьютера.
sp_configure 'affinity mask', 0
GO
RECONFIGURE
GO
Теперь с помощью нового параметра пула ресурсов AFFINITY можно связать каждый пул с его
собственным планировщиком. В этом случае параметр фактически делает один ЦП доступным
для каждой рабочей нагрузки.
ALTER RESOURCE POOL SalesPool
WITH (AFFINITY SCHEDULER = (0))
GO
16
ALTER RESOURCE POOL MarketingPool
WITH (AFFINITY SCHEDULER = (1))
GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO
После выполнения этого кода рабочие нагрузки будут запланированы для выполнения на разных
процессорах. Теперь после установки жесткого ограничения рабочая нагрузка отдела маркетинга
по-прежнему использует только 30 процентов одного ядра, в то время как рабочая нагрузка
отдела продаж использует 100 процентов ресурсов другого ядра. После установки сходства
планировщика графики использования ЦП для каждого пула ресурсов теперь будут ровными, что
показывает полную и согласованную изоляцию ресурсов ЦП между этими рабочими нагрузками.
Теперь с точки зрения рабочих нагрузок они выполняются на двух изолированных компьютерах,
предсказуемо получая необходимые им ресурсы. В этом пошаговом руководстве был показан
простой пример использования нескольких новых функций регулятора ресурсов SQL Server 2012
для обеспечения более эффективной изоляции ресурсов.
17
Рекомендации
Учитывайте общее использование ресурсов приложениями.
В этом документе представлена идеализированная рабочая нагрузка, не зависящая от других
ресурсов, таких как память и система ввода-вывода. Для памяти в регуляторе ресурсов
предусмотрена установка жестких ограничений и разделение ресурсов компьютера.
Параметр пула ресурсов MAX_MEMORY_PERCENT фактически является жестким ограничением
использования памяти, а не конъюнктурным параметром. Единственным исключением
в управлении памятью является буферный пул, который используется совместно для оптимизации
общей производительности запросов. Регулятор ресурсов в настоящее время не управляет
системой ввода-вывода, поэтому для сведения к минимуму связанных с ней проблем «шумных
соседей» необходимо использовать другие методы, например максимальное использование
памяти, чередование, изоляцию системы ввода-вывода и оптимизацию случайных операций
ввода-вывода за счет эффективного использования сетей SAN.
Избегайте совместного выполнения смешанных рабочих нагрузок на одних и тех же
процессорах.
Если рабочие нагрузки конкурируют друг с другом, планировщику будет удобнее справедливо
разделять и ограничивать ресурсы для схожих рабочих нагрузок. Если вам приходится управлять
ресурсами для разносторонних рабочих нагрузок, например смеси интенсивного использования
ЦП и системы ввода-вывода, попробуйте разделять эти рабочие нагрузки с использованием
сходства планировщика, а не устанавливать максимальные значения и ограничения для процессоров.
Всегда перенастраивайте сходство пулов после изменения конфигурации ЦП.
Пул ресурсов привязывается к набору планировщиков SQL Server, и предполагается, что они будут
изолированы на определенных процессорах. Что происходит, если компьютер отключается и ЦП
удаляется? Например, возьмем ситуацию, когда экземпляр SQL Server работает на виртуальной
машине и его ЦП мало загружен, поэтому количество ЦП для этой виртуальной машины было
уменьшено.
В лучшем случае параметры сходства планировщика больше не являются точными, потому
что планировщики, с которыми был связан пул ресурсов, теперь могут указывать на другие
процессоры. В худшем случае они могут указывать на несуществующие процессоры, что приведет
к ошибкам регулятора ресурсов, замене значения сходства на значение по умолчанию — Auto.
Поэтому после внесения изменений в конфигурацию ЦП всегда необходимо перенастраивать
параметры сходства планировщика и перезапускать регулятор ресурсов.
Следуйте дополнительным рекомендациям.
Дополнительные рекомендации, касающиеся функций регулятора ресурсов SQL Server 2008, см.
в разделе «Рекомендации» технического документа Использование регулятора ресурсов
(http://msdn.microsoft.com/library/ee151608.aspx).
18
Устранение неполадок
Есть ли новые средства, которые могут помочь мне с устранением неполадок?
Для устранения неполадок, связанных с маской схожести пула ресурсов и отслеживанием
параметров сходства, в SQL Server 2012 было включено новое динамическое административное
представление.
sys.dm_resource_governor_resource_pool_affinity
Имя столбца
Тип
данных
Описание
Pool_id
int
Идентификатор пула ресурсов.
Processor_group smallint
Идентификатор логической группы процессоров Windows.
Scheduler_mask bigint
Двоичная маска, представляющая планировщиков, связанных
с пулом.
У меня возникают ошибки сходства планировщика.
Предположим, что при установке сходства планировщика для пула на использование
планировщиков с 12 по 14 выводятся следующие ошибки:
Диапазон SCHEDULER, указывающий SCHEDULER с 12 по 14, включает как минимум
один SCHEDULER, недоступный в текущем экземпляре. Максимальное число
SCHEDULER, доступное на этом экземпляре, составляет 12.
Это означает, что вы пытаетесь связать пул ресурсов с планировщиками, которых не существует
(например, вы переместили конфигурацию на машину, имеющую меньшее количество
процессоров). Оптимальным методом разрешения этой проблемы является выполнение запроса
к динамическому административному представлению sys.dm_os_schedulers для просмотра
точных назначений «планировщик — ЦП».
Я не вижу определения новых функций регулятора ресурсов в объектной модели SMO.
Если для настройки регулятора ресурсов с использованием управляющих объектов SQL Server
(SMO) применяется Windows PowerShell или C#, использовать новые функции SQL Server 2012
невозможно. Новые классы SMO предположительно будут доступны в SQL Server 2012 с пакетом
обновления 1 (SP1).
19
Когда я создаю скрипт для определения пула ресурсов в SQL Server Management Studio, в нем не
отображаются новые функции.
Улучшения, связанные с созданием скриптов в среде SQL Server Management Studio, призванные
отображать новые возможности регулятора ресурсов, например параметр CAP_CPU_PERCENT или
сходства планировщиков, были добавлены в SQL Server 2012 с пакетом обновления 1 (SP1).
Заключение
Новые функции регулятора ресурсов в SQL Server 2012 облегчают разделение ресурсов ЦП
и памяти компьютера для обеспечения изоляции рабочих нагрузок и обеспечения
прогнозируемой производительности для отдельных рабочих нагрузок в мультитенантной среде.
Поскольку мощность отдельных компьютеров в плане количества ядер ЦП и объема памяти
возрастает и они, как следствие, потенциально могут предоставлять изолированные ресурсы
большему числу пользователей, максимальное количество пулов ресурсов в SQL Server 2012 было
увеличено с 20 до 64. Совместно эти функции обеспечивают лучшую мультитенантность за счет
поддержки секционирования вычислительных ресурсов компьютера на большее количество
изолированных пулов с большей степенью изоляции.
Дополнительные сведения о регуляторе ресурсов в SQL Server 2012 см. в разделе Регулятор
ресурсов (http://msdn.microsoft.com/library/bb933866.aspx) в электронной документации по
SQL Server.
Ссылки
Общие сведения о регуляторе ресурсов
Использование регулятора ресурсов
Авторы: Аарон Бертран (Aaron Bertrand) и Борис Барышников (Boris Baryshnikov)
Руководство по программированию управляющих объектов SQL Server SMO
Блог группы разработчиков инфраструктуры облака SQL Server
Для получения дополнительных сведений см.
http://www.microsoft.com/sqlserver/: веб-сайт SQL Server
http://technet.microsoft.com/ru-ru/sqlserver/: технический центр SQL Server
http://msdn.microsoft.com/ru-ru/sqlserver/: центр разработчиков SQL Server
20
Помогла ли вам эта статья? Пожалуйста, оставьте свой отзыв. Оцените материал по
шкале от 1 (плохо) до 5 (отлично) и обоснуйте свою оценку. Например:


Вы высоко оценили этот документ из-за наличия подходящих примеров, четких
снимков экрана, ясного изложения или по какой-либо другой причине?
Вы низко оценили степень полезности этого документа из-за плохих примеров,
нечетких снимков экрана и неясного изложения?
Ваш отзыв поможет нам повысить качество выпускаемых нами технических документов.
Отправить отзыв
21
Download