Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Разбиране на анализатора на работното натоварване за картографиране на тесните места в производителността

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

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

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

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

Как да използвате анализатора на работното натоварване на Spotlight Cloud

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

След това имате възможност да филтрирате по ресурс. Например, ако знаете, че проблемът е свързан с процесора, можете да изберете ресурса на процесора. Това филтрира информацията, свързана с всички други ресурси, като I/O, ключалки и памет, като ефективно елиминира белия шум и улеснява достигането до основната причина.

Страница по подразбиране на анализатора на работното натоварване

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

Разбивка в измерението на базата данни

Освен това, трябва да пробиете в базата данни за продажби, защото е важно да знаете какво е поведението на изчакванията конкретно в най-консумиращата база данни. В този пример изглежда, че по-голямата част от работното натоварване се дължи на CPU (45,7%) и I/O ресурси (30,2%) и техните скорости са близки до 0,48 сек/сек и 0,43 сек/с.

Разбивка в измерението на базата данни за продажби

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

Ключови показатели за производителност, филтрирани само за статистически данни на процесора

След това разбийте до T-SQL партиди. Това ни позволява да разберем кои партиди в базата данни за продажби са най-облагаеми.

Пробиване в T-SQL пакети

Тъй като тази партида е силно интензивна на процесора, важно е да знаете кои заявки в нея служат като виновник за допълнителните разходи. Използването на текста на T-SQL във връзка с плана за изпълнение показва, че операторът Sort е виновен. SQL Optimizer прогнозира, че приблизителната такса е 97 процента. Добавянето на индекс може да помогне за оптимизиране на производителността.

Изявления на T-SQL

План за изпълнение и анализ на разходите на извършените операции

Имайте предвид, че селекторът на ресурс може да бъде конфигуриран да подчертава ресурс, след като използването му надхвърли предварително дефиниран праг. Например, можете да настроите селектора да подчертава I/O ресурси, ако чакането е повече от 30 процента.

Коригиране на конфигурации за избор на ресурси за I/O ресурси

Приложени са актуализирани конфигурации за I/O Resource Selector


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Приложете функционалност за пейджинг (пропускане/вземане) с тази заявка

  2. SQL Server 2008 празен низ срещу пространство

  3. Как да генерирате изявления за вмъкване от текстови файлове за таблица на SQL Server в SQL Server - SQL Server / TSQL урок, част 106

  4. Има ли някакви недостатъци винаги да използвате nvarchar(MAX)?

  5. Заявка за актуализиране на SQL с помощта на съединения