sql >> Database teknologi >  >> RDS >> Oracle

Let i en nøddeskal

Som du måske ved fra et tidligere indlæg på denne blog, eller hvis du følger mig på Twitter (BPeaslandDBA), kan jeg godt lide Lighty for Oracle, et produkt fra Orachrome. Jeg elsker dette produkt, og hvor nemt det er at få oplysninger om ydeevnediagnostik. Jeg er meget fortrolig med Oracles Enterprise Manager, og jeg bruger EM12c hele tiden, når jeg får opkald om dårlig databaseydeevne. Men jeg håber nu, at Lighty bliver endnu et værktøj i mit arsenal.

Jeg forventer ikke, at Lighty erstatter Enterprise Manager. EM12c gør så meget mere end Lighty kan, det vil sige overvågning og alarmering og diverse databaseadministrationsopgaver. Så jeg beholder EM12c mange tak. Men jeg vil stole mere på Lightly for den ene del af mit job, som Lighty klarer sig rigtig godt, give information til at hjælpe med indsatsen til at justere ydeevnen. Lighty er kun til justering af ydeevne, og fordi den har et enestående fokus, gør den jobbet meget godt.

Jeg vil prøve at vise nogle højdepunkter af, hvorfor jeg synes, Lighty er et godt værktøj at bruge. Jeg vil kontrastere med EM12c. Til at begynde med går jeg i EM12c til Performance –> Performance Home, og jeg ser en skærm, der ligner følgende.

Med det samme kan jeg se, at jeg har CPU-ressourcestridigheder. Hovedskærmen i Lighty ser sådan ud.

Så vi har meget lignende oplysninger. Og det er her, forskellene slutter for mig … lige i starten. I EM12c er jeg tvunget til at tage en beslutning, borer jeg ned i CPU-udnyttelsen, eller en af ​​venteklasserne som User I/O? Da ovenstående viser CPU-stridigheder, klikker jeg i EM12c på CPU-delen af ​​diagrammet for at se nærmere. På dette tidspunkt i EM12c overvejer jeg kun CPU-brug til min analyse. Som vi skal se senere, kræver Lighty ikke, at jeg træffer det valg, hvis jeg ikke vil. Nedenfor er mit diagram fra EM12c.

Ovenstående diagram er meget almindeligt for mig i min Oracle RAC-database. Diagrammet ovenfor viser CPU-udnyttelsen for tre forekomster af min klyngede database. Hvilken dominerer CPU-udnyttelsen? De ser alle nogenlunde lige ud. Alligevel tvinger EM12c mig til at vælge én instans til analyse. Jeg kan ikke undersøge alle 3 forekomster på én skærm. Meget af mit arbejde er med Oracle RAC-ydelsesjustering, og EM12c's begrænsninger generer mig her. Jeg skal vælge en venteklasse eller CPU og derefter vælge en instans, før jeg kan få oplysninger om de øverste SQL-sætninger eller topsessioner. Hvis jeg borer langt nok ned i EM12c, kan jeg få en skærm som følgende.

Jeg er endelig nået et sted langt om længe! Jeg kan se de øverste SQL-sætninger og de øverste sessioner. Bemærk den fremhævede del. Dette er detaljer for et 5 minutters vindue. Vinduet på fem minutter er repræsenteret af den skraverede boks i CPU-udnyttelsesdiagrammet nedenfor for eksempelet.

I EM12c kan jeg trække den skraverede boks til et andet tidspunkt, og de øverste SQL- og topsessionsoplysninger vil ændre sig til at matche. Men jeg kan ikke ændre dette til et 10-minutters interval eller et andet tidsrum. Jeg sidder fast på 5 minutter.

Lad os nu sammenligne dette med Lighty. Vi har allerede set præstationsdiagrammet ligesom EM12 har. Under det præstationsdiagram i Lighty er en detaljerude på de øverste SQL-sætninger. Jeg behøvede ikke at klikke på noget for at få de bedste SQL-sætninger.

Med det samme ser jeg en forskel mellem Lighty og EM12c. Mine top SQL-sætninger er ikke udelukkende begrænset til CPU eller en specifik venteklasse. Hvis jeg ønsker at begrænse oplysningerne, kan jeg vælge fra en menuboks over ydeevnegrafen.

Jeg har typisk Alle valgt, men jeg kan vælge kun at se CPU, hvis jeg vælger det. Lighty begrænser mig ikke, som EM12c gør, medmindre jeg vælger at undersætte oplysningerne.

Bemærk i den øverste SQL, at jeg får vist en tidslinje over begivenhederne for den pågældende SQL. For eksempel kan vi se, at den øverste SQL-sætning på listen bruger masser af CPU. Andre SQL-sætninger på listen starter og stopper deres CPU-brug, vist i lysegrønt. Bruger I/O vises samtidigt her i blåt. Hvis jeg udvider en SQL-sætning, kan jeg få en oversigt over den SQL-sætning.

Bare ved at klikke på plustegnet ved siden af ​​SQL-sætningen, kan jeg se, at denne sætning har to forskellige eksekveringsplaner, og den ene af dem bruger 93,92% af den samlede CPU-udnyttelse. Hvis jeg udvider den plan, kan jeg se, hvor den bruger sin tid, opdelt efter ventehændelse.

Så lad os opsummere dette. Jeg startede Lighty og blev straks præsenteret for mine bedste SQL-sætninger, og med et enkelt klik ved jeg, at den øverste har en CPU-krævende eksekveringsplan. Det er super hurtigt og nemt efter min mening. EM12c gør det sværere at komme til disse oplysninger, og EM12c vil ikke vise mig, hvornår en SQL-sætning begyndte at forbruge CPU, og hvornår den stoppede som de grafer, Lighty giver.

Hvis jeg klikker på en SQL-sætning, ligesom jeg ville gøre i EM12c, vil Lighty vise mig statistik på den specifikke SQL. Hvis jeg klikker på fanen Brug, kan jeg se alle de sessioner, der kørte denne erklæring. Bemærk, at diagrammet viser en tidslinje for, hvornår den pågældende session forbrugte den pågældende ressource for denne SQL-sætning. EM12c vil ikke vise mig det detaljeringsniveau.

Med ovenstående kan jeg nemt se, at det er flere sessioner, der udfører den samme sætning på forskellige tidspunkter.

Kan du huske, at EM12c fik mig til at vælge en instans til denne Oracle RAC-database? I Lighty behøver jeg ikke træffe det valg. Men jeg kan ret nemt. Lighty er RAC-bevidst og registrerede flere tilfælde. Som standard har jeg alle forekomster valgt. En simpel rullemenu lader mig vælge en af ​​dem, og oplysningerne på skærmen tilpasser sig automatisk til netop det tilfælde.

Husk i EM12c, hvor det skraverede vindue repræsenterede en 5-minutters periode. I Lighty er SQL- og sessionsdetaljerne for hele grafen. Hvis du ønsker et 5-minutters vindue, kan du vælge 5-minutters-indstillingen over grafen. Som standard har den et 60 minutters vindue valgt.

Og jeg kan også vælge andre muligheder, herunder et tilpasset dato-/tidsinterval. I EM12c er grafen i 1 time, og jeg kan ikke ændre den.

EM12c har sin ASH Analytics for at lade mig se på ydeevne i fortiden. Men jeg har altid haft problemer med det. Med ASH Analytics (som lader mig se Active Session History) kan jeg ændre det grå vindue til at være noget andet end 5 minutter. Men for mig returnerer EM12c simpelthen aldrig dataene. Måske er der noget galt med mit EM12c-miljø. Men Lightly arbejder ud af boksen med historiske ASH-data. Lad os sige, at jeg blev ringet op om et præstationsproblem, der opstod mellem 8:00 og 9:00 i morges. Jeg vælger simpelthen et brugerdefineret tidsinterval.

I EM12c er jeg tvunget til at gå til en anden webside, Performance –> ASH Analytics.

Indtil videre har du sikkert fastholdt ideen om, at jeg synes, at Lighty er en hurtig og nem måde at få meget af den samme information, som jeg kan få fra EM12c. Og du ville have ret! Her er et andet område, som jeg godt kan lide ved Lighty. Hvis jeg går til Window -> Multiple Database Monitoring, så kan jeg se grafer over mange forskellige præstationsmålinger for flere databaser. Her er et eksempel. I et øjeblik kan jeg overvåge flere databaser på én skærm. EM12c vil ikke lade mig gøre det. Jeg kan se, at databasen yderst til højre er ret inaktiv, mens databasen i midten bliver ret hårdt ramt. Når jeg ruller ned på siden, får jeg diagrammer for mange metrics:

  • Analyser
  • Brugeropkald
  • Transaktioner
  • Læser og skriver
  • Diskforsinkelse
  • Disk I/O-gennemløb
  • Globale cacheoverførselshastigheder
  • Gentag generationshastigheder
  • Netværkstrafik

I EM12c ville jeg skulle besøge for mange sider for at få den samme information, som Lighty giver mig på én side.

Alle mine eksempler er afhængige af de samme Diagnostics og Tuning Packs, som jeg har licenseret. Hvis du ikke licenserer dem, giver Lighty lignende funktionalitet med Statspack og deres version af L-ASH (Lighty ASH).

Alt i alt synes jeg, at Lighty er et godt værktøj til DBA, der står for performance tuning. Omkostningerne er også meget rimelige. Jo mere jeg bruger værktøjet, jo mere kommer jeg til at sætte pris på, hvor hurtigt jeg kan få information. Jeg kan slå ting til eller fra med ikke mere end to klik for nemt at kunne bore ned til hovedårsagen til mine præstationsproblemer. Jeg opfordrer alle Oracle DBA'er til at downloade prøveversionen og se, om dette produkt er det rigtige for dem. Lighty kan findes her:http://www.orachrome.com/en/index.html


  1. Sådan opretter du en bruger og giver tilladelser i Oracle

  2. SQL Call Stored Procedure for hver række uden brug af en markør

  3. Opdel kommaseparerede kolonnedata i yderligere kolonner

  4. ORA-12170:TNS:Forbindelsestimeout opstod