Як виконувати аудит продуктивності SQL Server

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


За минулі сім років, що я був адміністратором баз даних SQL Server, я виробив список контрольних точок, який постійно використовую, коли доводиться мати справу з налаштуванням продуктивності серверів SQL Server. Я використовую цей контрольний список як керівництво, коли виконую перший раз "аудит продуктивності" незнайомого мені SQL Server. Я часто отримую запрошення "переглянути" SQL Server і дати рекомендації щодо того, як підвищити його продуктивність. До теперішнього часу я дійсно ніколи не документував той процес, який я виконую при цьому. Але оскільки мені все частіше доводиться консультувати з питань налаштування продуктивності, я, нарешті, вирішив, що настав час занести цей контрольний список питань аудиту продуктивності на папір. Хочеться сподіватися, що Ви знайдете його таким же корисним, яким він виявився для мене.


Аудит продуктивності SQL Server


Мета цього контрольного списку питань аудиту продуктивності полягає в тому, щоб квазінаукових способом допомогти Вам ідентифікувати будь-які очевидні проблеми продуктивності вашого SQL Server. Як я згадував вище, настроювання продуктивності SQL Server може виявитися досить важкою. Те, що я намагаюся робити за допомогою даного контрольного списку, повинно виявити всі "прості" проблеми продуктивності SQL Server, відкладаючи важкі проблеми на потім. Я роблю це, оскільки легко сплутати прості і складні рішення налаштування продуктивності SQL Server. Створюючи список "простих" областей налаштування продуктивності, простіше зосередитися на відпрацюванні простих рішень, і як тільки вони відпрацьовані, Ви далі можете зосередитися на більш важких рішеннях.


Однією з переваг використання такого контрольного списку для аудиту продуктивності SQL Server є не тільки те, що він підкаже вам найбільш прості способи підняти поточну продуктивність, але також дасть вам знати, що Ви вже зробили правильно. У деяких випадках вибір, який Ви зробили для вашого SQL Server, може бути навмисно відмінним від рекомендацій, наведених в цьому контрольному списку. Іншими словами, Ви навмисно взяли конкретне рішення не слідувати звичайній практиці настроювання продуктивності SQL Server. У деяких випадках Ви можете виявитися праві. Не всі рекомендації щодо продуктивності SQL Server застосовні у всіх ситуаціях. В інших випадках Ви, можливо, прийняли рішення на підставі обмеженості в ресурсах, наприклад, відсутності грошових коштів, щоб придбати необхідні апаратні засоби, які могли б винести наявну завантаження сервера. Якщо це має місце, то у Вас немає вибору і слід змиритися з існуючим станом речей. В інших же випадках рішення, які Ви взяли, можуть бути обумовлені політичними причинами, які можуть змінюватися або ж не змінюватися. У будь-якому випадку Ви повинні зробити те, що можете, використовуючи цей аудит продуктивності для ідентифікації тих областей, які Ви можете змінити, виконуючи потім ці зміни, щоб підвищити продуктивність вашого сервера.


У ідеалі Ви повинні виконати цей аудит на кожному з ваших серверів. Якщо у Вас їх багато, на це може знадобитися час. У цьому випадку Я б запропонував почати з тих серверів, які в даний час зазнають найбільших проблем з продуктивністю, приділяючи увагу іншим серверам при появі вільного часу.


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


Як проводити аудит продуктивності вашого SQL Server


Щоб полегшити виконання аудиту продуктивності SQL Server, я поділяю його на кілька розділів. Вони включають:



  1. Використання монітора продуктивності (Performance Monitor) для визначення вузьких місць апаратного забезпечення, на якому працює SQL Server
  2. Контрольний список питань оцінки продуктивності апаратних засобів сервера
  3. Контрольний список питань продуктивності операційної системи
  4. Контрольний список питань оцінки продуктивності конфігурації SQL Server 2000
  5. Контрольний список питань оцінки продуктивності конфігураційних налаштувань бази даних
  6. Контрольний список питань оцінки продуктивності системи індексів
  7. Контрольний список питань оцінки продуктивності програми та Transact-SQL
  8. Контрольний список питань оцінки продуктивності робіт (job) з базою даних SQL Server
  9. Використання Profiler з метою виявлення запитів, гірших з точки зору продуктивності
  10. Як наілучшщім чином здійснити аудит продуктивності SQL Server

Кращий спосіб провести аудит продуктивності вашого SQL Server полягає в тому, щоб спочатку Зробити огляд кожного з вищезгаданих розділів, і роздруковувати їх. Після чого виконати кожен розділ, записуючи отримані результати. Ви можете виконати аудит в будь-якому порядку, який вам більше підходить. Я лише перерахував вищезгадані кроки в тому порядку, в якому я зазвичай підходжу до аудиту продуктивності.

Brad M. McGehee(Оригінал: How to Perform a SQL Server Performance Audit)
Переклад: Моісеєнко С.І.
Оригінал перекладу

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


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

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

Ваш отзыв

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

*

*