Databasesystemer er meget som mennesker:De er komplekse og flerlagede, og de opfører sig ikke altid godt under stress. Det er her, SQL Server-ydelsesovervågning kommer ind i billedet.
Et godt værktøj til overvågning af ydeevne fungerer som dine øjne og ører i SQL Server til at opdage – og i nogle tilfælde endda forudsige – præstationsproblemer, så de kan løses hurtigt med minimal indvirkning på brugerne.
Når det kommer til præstationsovervågning, er timing virkelig alt. Dit databasesystem er ubrugeligt, hvis det ikke er tilgængeligt for brugere og kunder, når de har brug for det, så det er afgørende at undgå uplanlagte udfald og nedetid.
Din SQL Server-ydelsesovervågningsløsning kan hjælpe med at afbøde problemer ved at overvåge i realtid, så du bliver advaret om ydeevneproblemer tidligt, og du kan løse små problemer, før de bliver til store problemer. Mange overvågningsværktøjer tilbyder også robuste analyser, der giver dig mulighed for at spore ydeevnemålinger over tid for at hjælpe med at identificere igangværende systemproblemer og lokalisere årsagen til ydeevneforringelse.
End-to-end SQL Server-ydelsesovervågning vil uden tvivl forbedre den overordnede hastighed, effektivitet og pålidelighed af dit databasesystem, men der er tre hovedområder, der får mest gavn af SQL Server-ydeevneovervågning.
1. CPU og ressourceforbrug
Proaktiv overvågning af CPU-behandling lader dig se med det samme, om systemet er overbelastet. Konsekvent højt CPU-forbrug (70-80 procent) indikerer, at der er et ydeevneproblem i dit system. Det sjove er at finde det.
Fordi CPU-svinet kan være SQL Server eller en proces uden for SQL Server, vil dit første skridt være at finde ud af, hvilken proces der forårsager problemet.
Hvis du har overvåget CPU-brug over tid (som det anbefales), kan du forespørge på de historiske data for at identificere, hvilke processer der konsekvent bruger overdreven CPU eller forårsager flaskehalse, så du kan dykke dybere ned i hvorfor.
Når du ved, hvad og hvor problemet er, vil dit næste skridt være at tune ineffektive forespørgsler, optimere eksekveringsplaner eller omkonfigurere systemet for at fjerne trykket fra CPU'en.
2. Oppetid og tilgængelighed
Nutidens brugere kræver høj tilgængelighed (HA) for hver applikation, de bruger, så det skal være en prioritet at sikre, at dine databaser altid er online og 100 procent tilgængelige.
Sørg for maksimal serveroppetid og HA ved at bruge dit SQL Server-overvågningsværktøj til at holde øje med disse ydeevneproblemer, der kan påvirke tilgængeligheden:
Blokering
Blokering opstår, når flere klienter og forskellige processer anmoder om de samme ressourcer på samme tid. Hvis en ressource er i brug, er den låst og utilgængelig for efterfølgende anmodninger, så processen forsinkes, indtil ressourcen frigives og bliver tilgængelig igen.
SQL Server-blokke løser sig normalt ubemærket, men nogle gange skal en blokering løses manuelt.
Deadlock
SQL Server-deadlock opstår, når to processer, der konkurrerer om eksklusiv adgang til den samme ressource, skaber en standoff. Kun én proces kan bruge en ressource ad gangen, så ydeevnen falder, indtil dødvandet er løst.
Den eneste måde at løse en SQL Server-deadlock på er at dræbe en af de konkurrerende processer og frigøre den låste ressource, så processen kan fuldføres.
TempDB-strid
TempDB-strid opstår, når flere ressourcer kræver TempDB, men der er kun en enkelt TempDB-datafil at få adgang til. TempDB-påstand kan forårsage store ydeevneproblemer, og det tager ofte et stykke tid at diagnosticere, fordi problemerne ligner normal blokering på grund af databaselåse.
Always On-tilgængelighedsgrupper er en anden måde at minimere nedetid ved at maksimere tilgængeligheden af et sæt brugerdatabaser. Opsætning af SQL Server høj tilgængelighed er ret ligetil, og fordelene er besværet værd.
3. Diskplads
Utilstrækkelig diskplads er en førende årsag til nedetid i systemet, men heldigvis er det et ret nemt problem at undgå.
Dit SQL Server-ydelsesovervågningsværktøj bør give dig mulighed for at konfigurere advarsler, når du er ved at løbe tør for diskplads, før du har problemer med ydeevnen.
Kontinuerlig overvågning af disse metrics vil hjælpe med at sikre, at du altid bevarer tilstrækkelig diskplads:
- Ledig diskplads:Advarslen giver dig besked, hvis mængden af ledig diskplads falder under en tærskelværdi
- Ikke-allokeret plads:Advarslen giver dig besked, hvis en databasefil falder under en tærskelværdi
- Databasefiler vokser i størrelse:Advarslen vil give dig besked om overdreven eller hurtig filvækst
De tre områder diskuteret ovenfor har stor gavn af SQL Server-ydelsesovervågning, men i virkeligheden er hele dit system sundere og yder bedre, når du har en omfattende overvågningsstrategi på plads.
Hvis du ikke er sikker på, om du får alle de fordele, som nutidens SQL Server-ydelsesovervågningsløsninger tilbyder, kan denne tjekliste hjælpe dig med at vælge et SQL Server-ydelsesovervågningsværktøj, der passer til din organisations specifikke behov.