Використання монітора продуктивності

Монітор продуктивності включає в себе дві консолі: System Monitor і Performance Logs and Alerts Деякі сервери поміщають ярлик цього додатка в папку Адміністрування панелі управління системи Windows Як альтернатива цей монітор можна запустити в утиліті SQL Server Profiler, вибравши в ній пункт меню Tools ^ Performance Monitor

Сама назва програми монітор продуктивності (Performance Monitor) На замітку здатне ввести в оману PerfMonexe – це програма, яка поставляється з попередніми версіями операційної системи Windows Новий монітор продуктивності є повноцінною консоллю управління, і так його було б правильніше і називати, однак чомусь компанія Microsoft

вирішила назвати це додаток саме монітором, так що нам нічого не залишається, окрім як змиритися з цим Детальніше про це додатку ви можете дізнатися в книгах, присвячених Windows ХР

Монітор системи

Монітор системи, точніше, програма sysmon ехе, добре знайомий кожному, хто коли-небудь займався адмініструванням серверів, що знаходяться під управлінням серверної версії Windows Монітор системи містить безліч лічильників, консолідуючих дані про внутрішні характеристиках сервера У певному сенсі він нагадує монітор кардіографа, однак вимірює режим роботи не серцем людини, а операційної системи і сервера баз даних (рис 491)

Рис 491 Додаток монітора системи може придатися для оцінки загальної активності SQL Server

Додаткові лічильники продуктивності додаються в монітор системи по одному, за допомогою клацання на кнопці зі знаком плюс на панелі інструментів Лічильники продуктивності можна встановлювати як на локальному, так і на віддаленому сервері таким чином, абсолютно не обовязково запускати цю програму безпосередньо на компютері сервера баз даних Показники лічильників можуть відображатися у вигляді лінійного графіка, гістограми або в реальному часі

Всі лічильники організовані по обєктах і іноді по екземплярах обєктів У прикладі, показаному на рис 491, обєкт SQL Server: Databases містить безліч лічильників, включаючи лічильник кількості транзакцій, оброблюваних в секунду Показники цього лічильника можна переглянути як для всіх баз даних, так і тільки для обраних примірників

Ядро бази даних SQL Server є далеко не єдиним постачальником J На замітку інформації для монітора системи – свої лічильники в нього додають служби аналізу та звітності, сервери NET, ASP, BizTalk і багато інших

Зазвичай новий лічильник відображається у вигляді прямої лінії у верхній або нижній частині діаграми, так як для його більш детального перегляду необхідно виконати масштабування У діалоговому вікні параметрів програми, яке відкривається за допомогою команди Properties контекстного меню, ви можете скорегувати масштаб всіх графіків, діапазон значень вибраного лічильника і його представлення на екрані

Незважаючи на те що існують сотні доступних лічильників монітора системи, в табл 491 перераховані тільки найпопулярніші з них, безпосередньо відносяться до серверу баз даних SQL Server

Таблиця 491 Ключові лічильники моніторингу продуктивності

Обєкт

Лічильник

Опис

Область застосування

SQLServer:Buf fer Manager

Міра використання кешу

Відсоток читань, виконуваних з кешованих в памяті даних

SQL Server зазвичай добре справляється з роботою попереднього кешування даних в память Якщо показники не перевищують 95%, то більший обсяг памяті може істотно підвищити продуктивність

Processor

Міра завантаження процесора

Відсоток загального завантаження процесора

Якщо міра завантаження процесора постійно перебуває на рівні більше 60%, істотно вплинути на продуктивність можуть додаткові і більш швидкодіючі ядра процесора

SQLServer:SQL Statistics

Кількість пакетних запитів в секунду

Обробка пакетів SQL

Непоганий індикатор активності користувачів

Physical Disk

Середня довжина черги дискових операцій

Загальна кількість дискових операцій (читання і запису), очікують у черзі Це індикатор загальної пропускної здатності диска, на яку впливають кількість приводів, задіяних в RAID-масиві Згідно думку компанії Microsoft, довжина цієї черги не повинна перевищувати кількість дисків плюс 2

(Не забудьте при перегляді цього показника перевірити масштаб)

Пропускна здатність диска є ключовим фактором продуктивності Поділ бази даних по безлічі дискових підсистем може позитивно позначитися на продуктивності

Обєкт

Лічильник

Опис

Область застосування

SQLServer:SQL Statistics

Кількість відмов автоматичної настройки параметрів в секунду

Кількість запитів, для яких СУБД SQL Server НЕ кешуватися план виконання в память Цей захід є індикатором погано написаних запитів (не забувайте перевіряти масштабування)

Локалізація і коректування погано написаних запитів дозволяє підвищити продуктивність

SQLServer: Locks

Середній час очікування блокувань (в мілісекундах)

Може стати причиною серйозних проблем продуктивності Час очікування блокувань, а також загальна кількість і величина затримок є хорошими індикаторами якості політики блокувань, використаної в базі даних

Якщо виникають проблеми, повязані з блокуванням, слід ще раз перевірити структуру індексів і програмний код транзакцій

SQLServer:User Connections

Кількість підключень користувачів

Поточне кількість підключень

Непоганий індикатор потенційної цінності бази даних

SQLServer: Databases

Кількість транзакцій в секунду

Поточне кількість транзакцій в секунду

Хороший індикатор активності бази даних

Слід зазначити, що ще один індикатор, SQLServer-Wait Statistics, здатний допомогти у виявленні вузьких місць в сервері баз даних

I Повний список лічильників SQL Server та їх поточні значення можна дізнатися S VS з П0М01ДЬю динамічного подання управління sysdm_os_performance_ * I * counters Це досить зручно, оскільки дозволяє отримати статистичні * дані безпосередньо в програмному коді T-SQL

Ви й самі можете створити власні лічильники за допомогою мови Т-SQL і передавати дані з бази в системний монітор Це може виявитися корисним для відображення продуктивності транзакцій або кількості рядків, що вставляються генератором даних Існує десяток корисних користувальницьких лічильників У наступному простому прикладі показано прирощення значення лічильника:

DECLARE @Counter Int SET @Counter = 0 While @Counter &lt 100 BEGIN

SET @Counter = @Counter + 1 EXEC sp_user_counterl @Counter WAITFOR Delay 00:00:02

END

Я використовую монітор системи для отримання загальної картини стану сервера баз даних і визначення, з якими питаннями можу потенційно зіткнутися в роботі На підставі цієї інформації я можу скористатися утилітою SQL Profiler для більш детального ознайомлення з проблемою і її вирішення

Конфігурацію монітора системи, включаючи всі лічильники, можна зберегти у файлі – для цього слід вибрати в меню команду File ^ Save As Якщо необхідно відновити цю конфігурацію, потрібно вибрати в меню пункт File ^ Open За допомогою цієї технології ви можете експортувати конфігурацію монітора системи на інші сервери

Однак існує одна тонкість Якщо лічильник здійснює моніторинг локального сервера, то й на іншому сервері він буде відслідковувати стан локального компютера Якщо ж лічильник призначений для моніторингу віддаленого сервера, то навіть будучи встановленим на іншому компютері, він буде відслідковувати все той же сервер, незалежно від того, де відкритий файл конфігурації монітора системи Так як адміністратори баз даних вкрай рідко працюють за тим же компютером, на якому встановлена ​​СУБД SQL Server, цей факт може представляти проблему Якщо дана проблема постане перед вами, відправте мені лист електронною поштою – можливо, до того моменту я напишу власний монітор системи, в якому вирішу цю та багато інших проблем

Протоколи лічильників продуктивності

Монітор продуктивності також містить вбудований модуль Performance Logs and Alerts, що включає в себе протоколи лічильників (Counter Logs), оповіщення трасування (Trace Alerts) і звичайні попередження У цьому розділі ми зосередимо увагу на першому з цих компонентів Протоколи лічильників використовують всі ті ж лічильники сервера, що і монітор системи, однак замість графічного відображення на екрані їх показників в реальному часі дані записуються в журнал Це означає, що записані дані можна буде згодом проаналізувати і навіть відтворити в утиліті SQL Server Profiler (про це прекрасному інструменті ми детально поговоримо в наступному розділі)

Параметри конфігурації протоколів продуктивності перераховані у вузлі Counter Logs монітора продуктивності Щоб побачити результуючі файли, досить заглянути у вихідний каталог

Для створення нового протоколу продуктивності слід вибрати в контекстному меню вузла Counter Logs пункт New Log Settings Після введення імені протоколу відкриється діалогове вікно, показане на рис 492, в якому можна вибрати реєстровані лічильники Додавання нового обєкта призводить до перерахування для нього всіх лічильників в той же час можна вручну змінити їх склад для більш точних цілей, подібно тому, як це виконується в моніторі системи

Для протоколів лічильників можна скласти розклад їх можна запускати і зупиняти вручну з контекстного меню Log або за допомогою відповідних кнопок панелі інструментів

Якщо створення протоколу було визначено у вигляді текстового файлу з роздільниками, ви зможете відкрити його за допомогою програми Excel Кожен стовпець представляє собою послідовність показань деякого лічильника, а кожен рядок є сукупністю показань однієї вибірки

Джерело: Нільсен, Пол Microsoft SQL Server 2005 Біблія користувача : Пер з англ – М: ООО ІД Вільямс , 2008 – 1232 с : Ил – Парал тит англ

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*