sql >> Database >  >> RDS >> Sqlserver

Introductie van afspelen:nieuwe tijddiagnose voor Spotlight Cloud

Vandaag ga ik een opwindende nieuwe functie met de naam "Afspelen" doornemen die we hebben toegevoegd aan Spotlight Cloud.

Met afspelen kunt u een diagnose stellen van problemen die zich in het verleden met SQL Server hebben voorgedaan. Met behulp van de webinterface van Spotlight Cloud kunt u een tijd in het verleden kiezen waarop uw SQL Server prestatieproblemen ondervond en "afspelen" wat er op dat specifieke moment is gebeurd om u te helpen de oorzaak te achterhalen.

Voordelen van historische gegevens bij het bewaken van databaseprestaties

We kennen allemaal de frustratie als een gebruiker een probleem meldt dat hij de dag ervoor heeft ondervonden, om bij het onderzoeken van het probleem te ontdekken dat alles prima werkt.

Waarom is dit probleem opgetreden? Hadden ze het me maar verteld op het moment dat het gebeurde, dan had ik er iets aan kunnen doen. Kon ik maar teruggaan om te zien wat er precies op dat moment gebeurde.

Nou, dat kan nu.

Met Afspelen kun je tot een jaar terugspoelen en naar het moment gaan waarop een probleem zich voordeed en bekijken wat er op de server gebeurde.

Gebruikers meldden bijvoorbeeld trage prestaties bij het maken van rapporten op 6 maart. Als ik naar de huidige gegevens kijk, kan ik niet goed begrijpen wat het probleem is. Ik moet terugspoelen om te zien hoe de server die dag presteerde.

Tijdsperiodeselectie om in te zoomen op databaseproblemen

Met behulp van de tijdsperiode-selector rechtsboven in het scherm (hieronder weergegeven), selecteer ik de datum en tijd waarop het probleem zich heeft voorgedaan en druk op toepassen.

Het overzichtsscherm wordt opnieuw geladen en toont de status van de SQL Server op 6 maart.
Ik kan de top vijf van alarmen bekijken die op dat moment plaatsvonden en zien dat sessie 76 om 13:32 uur gedurende 112 seconden werd geblokkeerd.

Dit zou hebben geresulteerd in tragere serverprestaties. Ik heb nu dus ten minste een van de redenen gevonden voor het probleem dat de eindgebruiker heeft gemeld, maar wat was de oorzaak van de geblokkeerde sessie op dit moment?

Workload Analyzer Drill-Down voor krachtige inzichten

Als ik op "Diagnose" en vervolgens op "Geblokkeerde sessie" klik, kan ik de details van de Workload Analyzer bekijken en de geblokkeerde sessies zien die op dat moment plaatsvonden. Als u naar de rechterbovenhoek van het scherm kijkt, kunt u zien dat het tijdbereik hetzelfde is als wat ik eerder op de overzichtspagina heb geselecteerd. Dus ik weet dat ik kijk naar de geblokkeerde sessies die plaatsvonden op het moment dat het probleem werd gemeld.

Inzoomen op Workload Analyzer toont de geblokkeerde sessie en waardoor deze wordt geblokkeerd.

Vanaf hier kan ik de details van de geblokkeerde sessie bekijken en de oorzaak ervan. Ik kan ook naar vergrendelde objecten kijken en begrijpen welk object de meeste lock-wachttijd had.

Ik kan zelfs nog een stap verder gaan en dieper ingaan op de duur van de blokkering, de machine, het programma en de gebruiker die de blokkering heeft veroorzaakt.

Inzoomen op Workload Analyzer laat zien welk vergrendeld object de meeste "Lock Wait" veroorzaakt

Wanneer ik de muisaanwijzer over de grafiek met de uitsplitsing van de bronnen (hieronder) beweeg, kan ik de wachttijd voor vergrendeling zien gedurende de periode dat de gebruiker het probleem heeft gemeld. Deze mogelijkheid om terug te gaan en de oorzaak van het probleem te achterhalen, is waarom deze nieuwe afspeelfunctie zo opwindend is.

Drill-Down Workload Analyzer met de "Lock Wait Rate" voor een vergrendeld object

Nu we klaar zijn met dat voorbeeld, wil ik graag ingaan op hoe je daadwerkelijk een tijdbereik en interval selecteert in Spotlight Cloud. Wanneer u het tijdstip of tijdbereik voor afspelen selecteert, kunt u de bedieningselementen in de rechterbovenhoek gebruiken om de manier waarop het afspelen wordt weergegeven aan uw behoeften aan te passen.

SQL Server Overzicht Drill-Down met “Tijdsperiode” selector weergegeven.

Op dit moment bekijk ik het tijdbereik van 4 maart om 23:59 uur. tot 6 maart om 23:59 uur Als ik op deze terugspoelknop klik, zie je dat het tijdbereik met één minuut wordt verkort tot 23:58 uur.

Als ik met grotere stappen dan één minuut terug wil gaan, kan ik de vervolgkeuzelijst gebruiken om het tijdsinterval te wijzigen in vijf minuten, 30 minuten, een uur of maximaal 30 dagen. Ik heb 30 minuten geselecteerd en je kunt zien dat de eindtijd van de periode 30 minuten is teruggegaan naar 23:28 uur.

SQL Server-overzicht met tijdsinterval ingesteld op 30 minuten

Als ik op de "Tijdsperiode"-opties klik, kan ik het datumbereik selecteren met behulp van de vooraf ingestelde opties van het laatste uur, de laatste dag, de laatste 3 dagen. Of door op 'Meer' te klikken, kan ik de laatste zeven, 30 of 90 dagen selecteren.

Als ik, zoals in mijn eerdere voorbeeld, weet naar welk tijdsbestek ik wil kijken, dan kan ik de kalender gebruiken om de datums te kiezen en van daaruit een specifieke tijd selecteren.

Als ik klaar ben, of als ik om wat voor reden dan ook gewoon terug moet naar het heden, kan ik op "Reset" klikken en alles keert terug naar de oorspronkelijke staat.

Terugspoelen of vooruitspoelen voor drill-downs

Een ander punt dat ik moet maken, is dat elke drill-down een specifiek standaardtijdsinterval heeft voor terugspoelen en vooruitspoelen. De reden dat ze variëren, is dat het voor bepaalde drill-downs logisch is om met een kortere of langere interval te springen. Een voorbeeld zijn sessies waarin er veel activiteit is, en het is logisch om een ​​minuut terug of vooruit te spoelen om te zien wat er elke minuut verandert. Op Workload Analyzer, waar het doel is om problemen te onderzoeken en te identificeren, is het echter handig om trends te zien, en daarom is één minuut terugspoelen of vooruitspoelen niet zo handig. Daarom heeft Workload Analyzer een standaard tijdsinterval van 30 minuten voor terug- en vooruitspoelen.

Het is ook belangrijk op te merken dat wanneer u een tijdbereik selecteert met behulp van Afspelen, sommige statistieken worden weergegeven voor het meest recente punt in dat tijdbereik. Als we bijvoorbeeld naar de bovenstaande schermafbeelding kijken, is de statistiek 'Paginalevensduur' 20 seconden. Deze statistiek geeft de levensverwachting van de pagina weer op 6 maart om 23:28.

Andere statistieken, zoals de 'Gemiddelde wachttijd per I/O' bij de analyse van I/O per bestand (hieronder weergegeven), geven echter een geaggregeerde waarde weer omdat het geen zin heeft om deze gegevens weer te geven als een gemiddelde van een enkel tijdstip.


I/O door File Drill-Down

Deze afspeelfunctie is beschikbaar op alle drill-downs voor SQL Server met uitzondering van de Heatmap en de Health Check. Afspelen is ook beschikbaar in de drill-downs Overzicht en Alarmen voor Windows, Hyper-V, VMWare en Unix.

Unix-overzicht inzoomen


  1. Oracle WHILE LOOP Voorbeeld

  2. Hoe selecteer ik de laatste 5 rijen in een tabel zonder te sorteren?

  3. Hilarische tweets over het leven van een DBA

  4. SQL Server gebruiken als een DB-wachtrij met meerdere clients