Диагностициране на проблеми Resource Governor

Неочаквани резултати означават, ситуация, в която работят различните елементи на ресурса управител, но резултатите не съвпадат с очакваните. Например, класирането не работи сесии, никакви проблеми при създаване или изтриване на натовареност групи.

сесии класификация

Сесиите са класифицирани в групата на натовареността по подразбиране при следните условия.

потребителски дефинирана функция класификатор не съществува или не е активиран.

потребителски дефинирана функция класификатор поставя груповите сесии от натовареността подразбиране, което показва грешни логически функции.

Основно отстраняване на неизправности

Ако даден потребител дефинирана функция класификатор не работи, сесиите автоматично да се поставят в групата на натовареността подразбиране. След създаването на потребителски дефинирана функция класификатор за да се провери, че е регистрирана в контролера и че конфигурацията на ресурсите, съхранени в паметта се актуализира.

Създаване, регистрация и интеграция класификатор функция е дефинирана от потребителя процес от три стъпки.

Първо, трябва да се създаде функция.

За да се определи дали има капацитета на връзката, процесор, трябва да проверите следните параметри на системата.

Проверка на общото равнище на използване на сървъра на процесора. Ако сървърът се изпълнява в момента други приложения освен SQL Server, те може да се намесва с диагноза искането.

Проверете разпределение на ресурсите на процесора между ресурсни пулове. Басейнът на ресурсите може да бъде подложена на регулация, друг басейн, ако минималната зададена стойност високата степен на използване на процесора. Сравнете очакваните резултати (изчислен) използване на CPU с реалното натоварване.

Вижте всички групата на натоварване, определени от басейна на ресурсите. Заредете от други натовареност групи може да се отрази на потребителите на една и съща база на ресурсите.

Проверете разпределение на ресурсите на процесора между различните Schedulers. Гледан заявка може да бъде поставен в планировчика, който съдържа продължителни запитвания. В този случай, тя може да създаде впечатлението, че изпълнението на искането подлежи на регулация, но в действителност проблемът е неравномерното разпределение на натоварването между Schedulers.

Може би натовареността е блокиран от други сесии и не подлежи на регулиране по настройките на ресурса управител.

Проверка на броя на едновременни сесии, който в момента изпълнява молби в системата. Тъй като броят на едновременни заявки за изпълнение на SQL Server се опитва да се разпределя на всеки един от тях поне минимално количество процесорно време, за да се предотврати недостиг на ресурси на процесора за това искане.

Размерът на разпределение на паметта

В този случай, се предполага, че се дължи на забавяне запитвания към текущия размер на заделената памет.

Ресурса управител налага ограничението за памет за искането, намаляване на размера на паметта, разпределени на големи заявки могат да се запази в рамките на срока. Ако искането е получил по-малко от 100% от желаното количество разпределени памет, може да се наложи да възстановите данните от време и ще го напиша на диска, което оказва значително влияние върху производителността.

За да зададете правилно на максималния размер на паметта за тази заявка, трябва да се определи процента на големи запитвания. Оптимални параметри могат да се определят с помощта на следните действия.

Проверете текущото състояние за разпределяне на капацитета на паметта чрез справка таблицата sys.dm_exec_query_memory_grants. колона Ideal_memory_kb стойност показва оптимална стойност, изчислена на базата на оценки на броя на елементите. Requested_memory_kb стойност колона показва исканата стойност, която може да бъде намалена след достигане на максималния брой заявки. Ако стойността е значително по-ниски стойности requested_memory_kb ideal_memory_kb. запитване често принудени да възстановите данните от време (на предположението, че прогнозата е вярна брой елементи).

Стартиране система монитор и събиране на данни чрез намаляване грантове памет / сек брояч. Този брояч представлява относителния брой на искания за разпределение на паметта, които са разпределени по-малко от оптималната обема на факта, че максималният размер на разпределена памет е постигната по-рано. Големи заявки могат да се движат много по-бавно от тези, които получават оптималното количество памет, защото те трябва да възстановите данните на диска, за да се спази ограничението на заделената памет.

За да се компенсира проблема с разпределението на паметта, е възможно да се увеличи максималният размер на басейна или на максималния размер на разпределение на паметта.

Ресурса управител може да не е единствената причина за проблема. Може би най-сървъра да работят други приложения и техните изисквания за памет, е неразделна част от проблема.

Ако имате грешки в паметта е най-добре да се започне с диагностика грешка дънер. Дневникът съдържа съобщения, подобни на следното:

Възможни съобщенията, посочени в дневника грешка, както следва.

FAIL_PAGE_ALLOCATION, а след това и броя на страниците, по отношение на които е направен опит да се разпределение.

FAIL_VIRTUAL_RESERVE, а след това на броя на байтове, по отношение на които е направен опит излишни.

FAIL_VIRTUAL_COMMIT, а след това на броя на байтове, по отношение на които е направен опит да се определи.

Важно е да се разбере, че проблемът, която е предизвикала грешка на паметта, и проблемът, който е основната причина за грешки често са различни. Ако ние не говорим за искане извън контрол, липсата на грешка памет обикновено е резултат от многозадачност. В резултат на това проучване на причините за обикновен изглеждащи FAIL_PAGE_ALLOCATION грешка често трябва да се помисли за функционирането на системата в по-широк смисъл.

Следващият важен източник на информация, която се съдържа в дневника грешка е състоянието на паметта. В зависимост от конкретната грешка трябва да бъдат проверени, отнасяща се до специфична чиновници памет количествени стойности за една или няколко сделки, виртуално архивиране или фиксиране. Освен това, процесът на диагноза е важно да се идентифицират обекти или процеси, които консумират повечето от паметта. Обикновено най-взискателните от следните обекти или процеси на паметта.

MEMORYCLERK_ параметър * означава, че конфигурацията на сървъра или натоварване изисква специфично разпределение на паметта. компоненти SQL Server съответстват на техния чиновници памет, както и отделни компоненти могат да имат няколко служители на паметта. За повече информация, вижте. В раздел sys.dm_os_memory_clerks. Понякога, според служители на паметта може да разберете какво натовареността е причината за проблема. Но ние трябва да разгледа обектите памет най-често са свързани с чиновниците, за да разберете какво е причинило консумацията на големи количества памет.

CACHESTORE_ *, * USERSTORE_, OBJECTSTORE_ * са видовете кеш. Ако кеша консумира голямо количество памет, това може да означава следното.

Размерът й се разпределя, но все още не се включи като запис, който може да бъде премахнат от кеша. Това е много подобна на описаната по-горе ситуация обект MEMORYCLERK.

Всички записи се използват кеш, така че никой от тях не могат да бъдат отстранени. Можете да разберете, като погледнете в sys.dm_os_memory_cache_counters броячи и сравняване на стойностите entries_count entries_in_use_count и колони.

параметър MEMORYCLERK_SQLQERESERVATIONS показва колко памет е запазено да тече исканията за изпълнение на заявка сортирани или комбинирани. Ако това съотношение е висока, и по този начин има грешка с памет, обикновено е знак за програмна грешка в сървъра.

Индикатор Състояние на паметта в дневника грешка също така показва, които памет басейн е изчерпана. Брокери памет за всеки басейн показва разпределението на паметта между назаем (компилация) и запазени кеширана (избрани) памет. Показатели за трите брокери съответстват на предходните обекти памет, свързани с служители паметта. Човек може да види колко памет е предназначена за този басейн с този чиновник или обект с памет, се получава информация от пълна сметището, използвайки специален скрипт който и оглед динамичното управление показване sys.dm_os_memory_cache_entries pool_id идентификатор басейн, който е свързан с всяко въвеждане.

Ако имате нужда да се свържете с поддръжка на клиентите на услугите, събира следната информация.

Дневник грешка, която показва грешката на недостиг на памет и състоянието на изхода на паметта по време на грешката.

Показва следните указания: