Alati za praćenje SQL Servera mogu pratiti sve, od aktivnosti CPU-a i diska sustava Windows do blokiranja, statistike čekanja, planova upita i dostupnosti baze podataka. Pravi alat stoga ovisi o sloju SQL Servera koji zapravo trebate promatrati, a ne o veličini popisa značajki.
Ovaj vodič razlaže što IT timovi trebaju pratiti, gdje prestaje praćenje Windows poslužitelja i gdje počinje praćenje specifično za SQL, koji su dostupni ugrađeni Microsoft alati i kako odabrati odgovarajući pristup praćenju.
Što čini praćenje SQL poslužitelja izvanrednim?
Praćenje poslužitelja, osnove:
Microsoft SQL Server radi na serverskoj infrastrukturi, tako performanse operativnog sustava su važne Visoka iskorištenost CPU-a, pritisak na memoriju ili spora pohrana mogu utjecati na SQL Server čak i kada s motorom baze podataka nije inherentno ništa pogrešno.
Potrebne specifične nadzore baze podataka za SQL poslužitelje:
Međutim, jasni metrički podaci sustava Windows Server ne znače nužno dobru izvedbu SQL Servera. Korisnici mogu doživjeti spore transakcije zbog blokiranja, loših planova izvršenja ili čekanja na upite dok se temeljni stroj još uvijek čini zdravim.
Kako Microsoft dijeli ovo:
Microsoft odražava ovu razliku u vlastitoj arhitekturi nadzora. Windows alati kao što su Performance Monitor pokrivaju sistemske resurse, dok SQL Server pruža specifične mogućnosti za baze podataka uključujući Query Store, Extended Events, Activity Monitor, zapise o greškama i mogućnosti nadzora Transact-SQL.
Praćenje SQL Servera stoga bi trebalo obuhvatiti nekoliko komplementarnih slojeva umjesto jednog skupa metrika.
Što bi alati za praćenje SQL Servera trebali pratiti?
Točne metrike potrebne ovise o tome jesu li IT timovi prvenstveno odgovorni za dostupnost infrastrukture, administraciju baza podataka ili performanse aplikacija. Korisna strategija nadzora započinje široko i dodaje dublju vidljivost SQL Servera gdje to opterećenje zahtijeva.
1. Zdravlje poslužitelja i infrastrukture
Započnite s resursima dostupnim za SQL Server domaćina. CPU, fizička memorija, kapacitet diska, aktivnost čitanja i pisanja diska, korištenje mreže i pokrenuti procesi pružaju infrastrukturni kontekst za performanse baze podataka.
Važna točka je korelacija. Visoka vremena odgovora SQL-a praćena latencijom pohrane sugeriraju drugačiju istragu od sporih upita koji se javljaju dok host ima dovoljno CPU-a, memorije i I/O kapaciteta.
Praćenje domaćina također pomaže u otkrivanju problema koji utječu na više od SQL Servera. Fizički ili virtualni poslužitelj može hostirati podržavajuće aplikacije, usluge ili udaljene korisnike čija aktivnost konkurira za iste resurse.
2. Zdravlje SQL Server instance i baze podataka
Sljedeća razina gleda unutar samog motora baze podataka.
Važna područja obično uključuju čekanja, aktivne sesije, blokade, mrtve blokade, rast datoteka baze podataka, korištenje dnevnika transakcija i aktivnost TempDB-a. Administratori također mogu trebati pratiti stanje baze podataka, veze, ponašanje memorije i usluge SQL Servera.
Statistika čekanja je posebno korisna jer pomaže identificirati za koje SQL Server zadatke se čeka, umjesto da samo pokazuje da je sustav spor. Blokiranje i mrtve točke pružaju dodatnu vidljivost pomažući identificirati natječu li se određene transakcije za resurse.
Posvećene platforme za praćenje baza podataka stoga idu mnogo dublje od monitora hostova. Na primjer, IDERA SQL Diagnostic Manager dokumentira praćenje čekanja, blokirajućih lanaca, mrtvih blokada, pritiska na TempDB, I/O latenciju i rast baze podataka.
3. Upit i izvedba opterećenja
Jednom kada je problem lokaliziran na opterećenje baze podataka, agregirani metrički podaci poslužitelja često su nedovoljni. Administratori trebaju odrediti koje upite troše prekomjerne resurse i jesu li se njihovo ponašanje promijenilo.
Korisne informacije na razini upita mogu uključivati trajanje izvršenja, potrošnju CPU-a, logička i fizička čitanja, potrošnju memorije, učestalost izvršenja, čekanja i planove izvršenja.
Microsoft Query Store je dobar primjer softvera prilagođenog za ovo. Zadržava upite, planove i statistiku u vrijeme izvođenja kako bi administratori mogli ispitati performanse tijekom vremena i identificirati regresije povezane s promjenama u planu upita. SQL Server 2017 i noviji mogu zabilježiti statistiku čekanja putem Query Store.
Ovaj povijesni kontekst je važan jer su mnogi problemi sa SQL Serverom povremeni. Znati da je CPU jučer poslijepodne dosegao 90% je korisno. Znanje o tome koje su upite promijenile ponašanje u istom trenutku identificira potencijalne poluge za djelovanje.
4. Dostupnost, Poslovi i Operativno Zdravlje
Performanse su samo jedan aspekt praćenja SQL Servera. Operativni problemi mogu utjecati na dostupnost i mogućnost oporavka čak i kada se performanse opterećenja čine normalnima.
Ovisno o okruženju, administratori mogu trebati uvid u SQL Server Agent poslove, sigurnosne kopije, dostupnost baze podataka i Always On Availability Groups. Veći ili poslovno kritični sustavi također mogu zahtijevati praćenje replikacije, praćenje konfiguracije i prognoze kapaciteta.
Potrebna dubina mora slijediti važnost radnog opterećenja. Mala interna baza podataka ili klasterizirano proizvodno SQL Server imanje zahtijevaju vrlo različite arhitekture nadzora.
Koje ugrađene alate za praćenje SQL Servera možete koristiti?
Prije kupnje namjenske platforme, vrijedi razumjeti što Microsoft SQL Server već pruža.
Širok skup izvornih alata:
- Activity Monitor podržava ad hoc inspekciju
- Query Store čuva povijesne informacije o upitima i planovima
- Produženi događaji bilježe odabrane događaje motora
- Dinamički upravljački prikazi otkrivaju interne podatke o performansama
- SQL Server error logs pomažu u istraživanju događaja u bazi podataka.
- Windows Performance Monitor dodaje informacije o resursima operativnog sustava.
Dublja dijagnostika, ali veća složenost:
Ovi alati mogu pružiti značajnu dijagnostičku dubinu, posebno za iskusne administratore baza podataka. Također izbjegavaju uvođenje još jednog platforma za praćenje kada je povremeno rješavanje problema dovoljno.
Njihovo ograničenje često nije pristup podacima, već operativna pogodnost. IT tim koji upravlja višestrukim poslužiteljima može željeti centralizirane nadzorne ploče, trajne povijesti, lakše upozoravanje i bržu korelaciju umjesto sastavljanja informacija iz nekoliko SQL Server i Windows sučelja.
Tamo treća strana nadzor postaje privlačniji.
Kako odabrati alate za praćenje SQL poslužitelja?
Započnite s problemom koji alat treba riješiti. To bi vas trebalo spasiti od gubitka vašeg cilja u popisu najvećeg broja podržanih mjernih podataka.
1. Potrebna dubina vidljivosti
Koristan prvi pitanje je trebate li nadzor infrastrukture, dijagnostiku baze podataka ili detaljnu analizu upita.
| Zahtjev | Pristup nadzoru |
|---|---|
| CPU, memorija, disk i dostupnost poslužitelja | Praćenje poslužitelja ili infrastrukture |
| Povremeno rješavanje problema s SQL Serverom | Ugrađeni alati Microsoft SQL Servera |
| Blokiranje, čekanja, mrtvi zaključci i upozorenja baze podataka | Praćenje posvećenog SQL poslužitelja |
| Planovi upita i regresije performansi | Upitna trgovina ili napredno SQL praćenje |
| Veliko višekratno SQL imanje | Centralizirano praćenje baze podataka |
| SQL Server plus šire ovisnosti o aplikacijama | Infrastruktura ili cjelovita promatranje kombinirana s SQL-specifičnim nadzorom |
Ove kategorije se mogu preklapati. U mnogim okruženjima, najpraktičniji pristup je kombinacija umjesto jednog proizvoda.
2. Usklađivanje upozorenja i povijesti s operacijama
Praćenje postaje najkorisnije kada ističe abnormalno ponašanje prije nego što korisnici prijave problem.
Pogledajte podržava li alat upozorenja na prag, povijesne trendove i dovoljno konteksta za istraživanje događaja nakon toga. Specijalizirane SQL platforme mogu ići dalje povezivanjem blokirajućih lanaca, grafova mrtvih blokada ili informacija o upitima izravno s upozorenjem. Redgate Monitor, na primjer, dokumentira SQL-specifična upozorenja za događaje uključujući mrtve blokade, neuspjele poslove, blokirane upite i dugotrajne upite.
Postavljanje osnovica je također važno. Vrijednost koja je abnormalna za jednu bazu podataka može biti rutinska za drugu, stoga bi upozorenja trebala odražavati ponašanje i poslovnu važnost pojedinačnih radnih opterećenja.
3. Razmotrite razmjere, implementaciju i administraciju
Alat prikladan za jednu instancu SQL Servera može postati nezgrapan na desecima poslužitelja.
Razmotrite koliko hostova, instanci i baza podataka treba nadzirati, kako se podaci o nadzoru prikupljaju i čuvaju, te koliko lako administratori mogu usporediti sustave iz središnje konzole. Licenciranje, napor pri implementaciji, generiranje izvještaja i upravljanje upozorenjima stoga bi trebali biti ocijenjeni uz tehničku dubinu.
Cilj nije prikupiti svaku moguću metriku. Cilj je prikupiti najrelevantnije informacije u dovoljnoj količini kako bi se identificiralo abnormalno ponašanje i skratila putanja od simptoma do uzroka kako bi vaši IT tehničari mogli riješiti problem.
Gdje se uklapa TSplus Server Monitoring?
TSplus Server Monitoring se bavi infrastrukturnom stranom ovog modela nadzora. Pruža vidljivost u stvarnom vremenu u CPU, memoriji, aktivnosti čitanja i pisanja diska, propusnosti, procesima i povezanim korisnicima, zajedno s povijesnim izvještajima i konfigurabilnim upozorenjima za metrike poslužitelja.
Za Windows poslužitelj koji pokreće Microsoft SQL Server, ova vidljivost će pomoći u određivanju je li problem s performansama baze podataka povezan s pritiskom na CPU, potrošnjom memorije, aktivnošću diska ili nekim drugim uvjetom na razini hosta. Povijesno izvještavanje također pruža kontekst za ponavljajuće probleme s infrastrukturom.
TSplus Server Monitoring nije, međutim, posvećen analitičar performansi SQL Server baze podataka. SQL-specifični zahtjevi kao što su analiza plana izvršenja, istraživanje Query Store-a, blokirajući lanci, analiza mrtvih blokada ili detaljna statistika čekanja zahtijevaju Microsoftove alate za SQL Server ili specijalizirani proizvod za praćenje baza podataka.
Za mnoge IT timove, ovi slojevi se međusobno nadopunjuju. TSplus Server Monitoring može pružiti jednostavan pregled zdravlja poslužitelja i potrošnje resursa, dok nativni alati SQL Servera osiguravaju dublju vidljivost baze podataka i pomažu u identificiranju kada incident ukazuje na motor baze podataka ili pojedinačno opterećenje.
Zaključak
Odabir među alatima za praćenje SQL Servera počinje odlukom o tome što treba imati uvid. Resursi poslužitelja, zdravlje baze podataka i performanse upita predstavljaju različite slojeve istog sustava, a nijedna pojedinačna mjera ne objašnjava sve njih.
Započnite s praćenjem zdravlja infrastrukture, a zatim dodajte SQL-specifično praćenje gdje god radno opterećenje zahtijeva dublju dijagnostiku. Ovaj slojeviti pristup održava praćenje praktičnim dok IT timovima pruža dovoljno konteksta da razlikuju problem sa poslužiteljem od problema s bazom podataka ili upitom.
TSplus Besplatno probno razdoblje za daljinski pristup
Krajnja alternativa za Citrix/RDS za pristup radnoj površini/aplikacijama. Sigurno, isplativo, lokalno/u oblaku
Neka često postavljana pitanja
Što je alat za praćenje SQL Servera?
Alat za praćenje SQL Servera prati zdravlje, performanse ili dostupnost okruženja Microsoft SQL Servera. Ovisno o svom opsegu, može pratiti resurse hosta, baze podataka, čekanja, blokade, upite, poslove, sigurnosne kopije ili konfiguracije dostupnosti.
Koje SQL Server metrike trebam pratiti?
Osnovne metrike koje ovise o opterećenju obično uključuju CPU, memoriju i pohranu. Uz to, SQL-specifične oznake ukazuju na čekanja, blokade, mrtve točke, rast baze podataka, transakcijske dnevnike, aktivnost TempDB-a, trajanje upita i status poslova.
Može li praćenje Windows poslužitelja otkriti probleme sa SQL poslužiteljem?
Praćenje Windows Servera može identificirati infrastrukturne probleme koji utječu na SQL Server, uključujući pritisak na CPU, memoriju i disk. Samo po sebi ne može objasniti probleme s bazom podataka kao što su regresije plana upita, blokirajući lanci ili SQL-specifična čekanja.
Uključuje li SQL Server vlastite alate za praćenje?
Da. Microsoft SQL Server uključuje alate i mogućnosti kao što su Query Store, Extended Events, Activity Monitor, Dynamic Management Views, dnevnici grešaka i Transact-SQL funkcije performansi. Njihova prikladnost ovisi o događaju ili opterećenju koje se istražuje.
Trebam li softver za praćenje posvećenog SQL Servera?
Nije nužno. Ugrađeni alati mogu biti dovoljni za mala okruženja ili povremeno rješavanje problema. U kombinaciji s TSplus Server Monitoring za opće svrhe, Microsoftov vlastiti ugrađeni monitor SQL Servera ima malo toga za zavidjeti proizvodima trećih strana za praćenje. Posvećeno praćenje postaje korisnije kada timovi trebaju centraliziranu vidljivost, kontinuirane alarme, dugoročnu povijest ili bržu dijagnostiku na više instanci SQL Servera.