Високопроизводителните бази данни с висока достъпност са целта на всеки SQL Server DBA, но реалността е, че производителността на базата данни не винаги е оптимална. Бавното време за реакция, изчакването и блокираните процесори се случват на най-добрите от нас, което прави стратегическото конфигуриране на диагностиката на SQL Server решаваща стъпка за поддържане на ефективна, добре функционираща система.
Диагностиката на SQL Server ще разкрие проблеми с производителността, свързани с използването на паметта, скоростта и ефективността на заявките и използването на процесора, което ще ви помогне да идентифицирате и отстраните проблемите бързо с минимален ефект върху производителността. За да минимизирате още повече въздействието върху производителността, можете да създадете стратегия за наблюдение на производителността, която включва проследяване на диагностичните данни във времето, за да разкриете трудни за локализиране проблеми и да предвидите бъдещи проблеми с производителността, преди да се появят.
За да получите най-ценната информация от вашата диагностика на SQL Server, важно е първо да определите какво се надявате да научите от данните, за да наблюдавате най-подходящите показатели за ефективност. Ето четири съвета, които да ви помогнат да започнете.
Дагностична цел:Наблюдаване на производителността на базата данни за локални, виртуални и облачни среди
Независимо дали вашите бази данни се съхраняват на място, в облака или в хибридна среда, наблюдението на производителността на базата данни в тези пет области ще ви предупреди за някои от най-често срещаните проблеми с производителността:
- Наличност:Поддържането на висока наличност е един от основните приоритети на DBA. Проследяването на регистрационните данни за клъстер при отказ и текущото състояние на сървъра са от ключово значение за ранното откриване и коригиране на проблеми.
- Използване на TempDB:Следете колко TempDB използвате и как се използва. Също така е препоръчително да създадете базова база на TempDB и да изтеглите данни за производителността преди и след промените.
- I/O:диагностиката на SQL Server ще разкрие блокирани I/O операции, които могат да причинят блокиране и други проблеми с производителността.
- Използване на процесора:Високото натоварване на процесора може да бъде причинено от няколко неща. Използвайте диагностика на SQL Server, за да изолирате основната причина. Този контролен списък може да ви насочи в правилната посока.
- Използване на паметта:Ако не оптимизирате използването на паметта, в даден момент ще имате проблеми с производителността. Изпълнете диагностика, за да определите кои процеси използват повече от техния дял от паметта и ги оптимизирайте или пренапишете, ако е необходимо.
Цел на диагностиката:Намерете причините за блокиране и безизходица
Блоковете и блокирането са основни убийци на производителността, така че диагностицирането на причините за блокиране и бързото разрешаване на проблема е от съществено значение за поддържане на висока производителност. Няколко често срещани източника на блокиране и блокиране могат да бъдат премахнати чрез тези три практики:
- Разглеждане на заявки и планове за заявки:Дългите заявки и неефективните планове за заявки допринасят за блокиране и блокиране. Диагностиката може да идентифицира заявки, които могат да бъдат разбити на множество кратки транзакции и кои планове за заявки не са оптимизирани в резултат на остарели статистически данни.
- Анализирайте работното натоварване:Увеличаването на работното натоварване може да причини блокиране, тъй като повече процеси се борят за същите ресурси. Диагностиката може да определи точно кой потребител, база данни, хост или оператор на SQL Server причинява блокирането или блокирането, за да можете да преразпределите натоварването според нуждите.
- Проверка на индексите:Доброто индексиране може да предотврати блокиране, като премахва необходимостта от пълно сканиране на таблицата. Като позволява на SQL Server да търси, а не да сканира, индексирането поддържа достъпни до незаключените ресурси.
Диагностична цел:Отстраняване на фалшиви сигнали
Фалшивите сигнали са повече от досадни; те допринасят за неоткрити проблеми с производителността чрез умора на алармата. Алармената умора възниква, когато честите фалшиви аларми карат DBA да игнорира сигнали, като потенциално липсва известие, че е настъпила критична повреда.
Най-добрият начин да спрете фалшивите сигнали е диагностицирането на източниците на повтарящи се фалшиви сигнали и или премахването на некритични сигнали, или задаване на прагове, които тясно определят условията, които задействат сигнал.
Диагностична цел:Оптимизиране на SQL заявки
Изпълнението на редовна диагностика на SQL Server на заявки ще помогне за намаляване или премахване на множество потенциални проблеми с производителността. Два начина, по които можете да подобрите заявките въз основа на диагностика на SQL Server, са:
- Настройка на заявка:Ако вашият инструмент за наблюдение на производителността на SQL Server показва, че генерирането на отчет отнема много години, че наскоро е имало огромен скок в изчакването на I/O или че някои задачи отнемат три пъти повече време, отколкото направиха преди година, диагностиката може да покаже, че настройката на заявката е наред. Настройката на заявките подобрява производителността, като анализира заявките и след това ги пренаписва, ако е необходимо, докато работят на максимално ниво на ефективност.
- Актуализиране на статистическите данни:Както бе споменато по-горе, остарелите статистически данни допринасят за проблеми с производителността, като задействат неефективни планове за заявки. Планирайте автоматизирани актуализации, където е възможно. Когато автоматизацията не е възможна, добавете ръчни актуализации към контролния си списък за редовна поддръжка, за да сте сигурни, че статистиката остава актуална.
Диагностиката на SQL Server е основен инструмент в инструментариума на DBA. Разбирането на начина, по който диагностиката допринася за поддържането на надеждна среда на база данни на SQL Server с висока достъпност, ще ви помогне бързо да намерите и коригирате проблеми с производителността с минимален ефект върху вашите потребители.