Първо и най-важно, какво е безизходица? Застой възниква, когато две или повече транзакции блокират напредъка на една друга, тъй като една транзакция има заключване на обект на база данни, до който другите имат нужда от достъп. Това създава трудно спиране на всякакъв вид напредък, тъй като всеки процес може да чака неопределено време за заключения обект. SQL Server се намесва, за да излезе от патовата ситуация, като убие един или повече от блокираните процеси. Нещастните процеси, които бяха убити, трябва да започнат отначало.
Повечето администратори на база данни се опитват да намерят задънена улица (или се опитват да разберат дали това се е случило на първо място), защото отнема много време. Често, докато се установи задънена улица, може да са възникнали още няколко, което усложнява проблема. Дори когато разберете, че е възникнала задънена улица, е почти невъзможно да я коригирате, без да знаете какво е блокирано, естеството на типа заключване, поискано от всеки процес, и какви сесии са били включени.
Функции като анализ на безизходица обикновено се виждат само в скъпите инструменти за наблюдение на „ниво предприятие“. Но нашите разработчици в Spotlight Cloud разбират, че понякога DBA не наблюдават стотици SQL сървъри – понякога това са само 1 или 2. Ето защо сме толкова развълнувани да обявим, че анализът на блокиране вече е включен като стандартна функция в нашия хостван инструмент за наблюдение, Spotlight Cloud Professional. Ето как работи.
С Spotlight Cloud SQL Server Deadlock Analysis ще имате достъп до всички данни за производителността, необходими за идентифициране и разрешаване на блокиране и подобряване на производителността на вашата база данни.
Таблото за анализ на застой в Spotlight Cloud показва пълен изглед на задръстванията във вашата среда на SQL Server. Тук можете да видите всички процеси и ресурси, засегнати от блокирането на един екран, да видите обобщение за това колко блокирания са възникнали в рамките на определен период от време, времето, което всеки процес е загубил в резултат на блокирането, свързания SQL и кои процеси станаха жертви на разрешаването на застой на SQL Server.
В прегледа на алармите можете да видите всички аларми, свързани със застой. Ако щракнете върху алармата, ще видите обобщение за това колко са възникнали блокирания, броя на сесиите, пожертвани като жертви, и общото загубено време поради разрешаване на блокиране. В допълнение към цялата информация, изброена по-горе, ще видите най-засегнатите сесии, бази данни и обекти.
В обобщение
Spotlight Cloud Deadlock Analysis ви позволява да преглеждате сесиите и програмите, които са се изпълнявали по време на инцидента на задънена улица. В таблото за управление ще видите точния SQL текст, който е бил изпълнен от тази конкретна програма. Когато разгледате този SQL, можете да идентифицирате защо е бил блокиран и какво друго се е опитвало да го грабне по това време. Можете също да филтрирате по тип заключване – ред, ключ, страница, SPID и т.н. С типа на заключване, обекта, който е участвал, текста на изявлението, който е бил включен, и сесиите, ще можете да съберете заедно безизходица и започнете да разрешавате.
С анализа на безизходица на Spotlight Cloud можете...
- Преглеждайте/редактирайте вашата времева линия и заявка за пропускателна способност на секунда в лесна за четене таблица.
- Филтрирайте въз основа на бази данни, програми, потребители и обекти, така че да можете да идентифицирате основната причина за убитите процеси. Например, ако конкретен обект, може би таблица в базата данни, е бил недостъпен поради блокиране.
- Идентифицирайте всички сесии, свързаната програма и всички жертви, свързани с конкретна безизходица.
- Вижте списък с обекти, поискани от всяка сесия, и поискания тип заключване
- Вижте точния SQL текст, който е бил изпълнен от конкретна програма.
Така че, вместо да прекарвате часове в опити за намиране на безизходица, опитайте 30-дневна пробна версия на Spotlight Cloud Professional, за да увеличите максимално времето и ресурсите си.