sql >> Databáze >  >> RDS >> Oracle

Lehký V Kostce

Jak možná víte z předchozího příspěvku na tomto blogu, nebo pokud mě sledujete na Twitteru (BPeaslandDBA), líbí se mi Lighty for Oracle, produkt od Orachrome. Líbí se mi tento produkt a jak snadné je získat informace o diagnostice výkonu. Velmi dobře znám Oracle's Enterprise Manager a používám EM12c neustále, když mi někdo volá kvůli špatnému výkonu databáze. Ale teď doufám, že se Lighty stane dalším nástrojem v mém arzenálu.

Neočekávám, že Lighty nahradí Enterprise Manager. EM12c toho umí mnohem víc, než dokáže Lighty, tedy monitorování a upozorňování a různé úlohy správy databází. Takže si nechám EM12c, děkuji moc. Ale budu se na Lightlyho více spoléhat v jedné části své práce, kterou Lighty dělá opravdu dobře, a to poskytování informací, které pomohou při ladění výkonu. Lighty je pouze pro ladění výkonu a protože má jedinečné zaměření, dělá svou práci velmi dobře.

Pokusím se ukázat některé hlavní body, proč si myslím, že Lighty je skvělý nástroj k použití. Budu kontrastovat s EM12c. Pro začátek, v EM12c přejdu na Performance –> Performance Home a zobrazí se mi obrazovka podobná následující.

Okamžitě vidím, že mám spor o zdroje CPU. Hlavní obrazovka v Lighty vypadá následovně.

Máme tedy velmi podobné informace. A tím pro mě rozdíly končí… hned na začátku. V EM12c jsem nucen se rozhodnout, zda se podívám na využití CPU nebo na jednu z tříd čekání, jako je User I/O? Vzhledem k tomu, že výše uvedené ukazuje spor o CPU, v EM12c kliknu na CPU část grafu, abych se dostal dolů. V tomto bodě EM12c zvažuji pouze využití CPU pro svou analýzu. Jak uvidíme později, Lighty nevyžaduje, abych se rozhodl, pokud nechci. Níže je můj graf z EM12c.

Výše uvedený graf je pro mě v mé databázi Oracle RAC velmi běžný. Výše uvedený graf ukazuje využití CPU pro tři instance mé klastrované databáze. Který z nich dominuje ve využití CPU? No, všechny vypadají docela stejně. Přesto mě EM12c nutí vybrat jednu instanci pro analýzu. Nemohu prozkoumat všechny 3 případy na jedné obrazovce. Hodně mé práce je s laděním výkonu Oracle RAC a omezení EM12c mě zde obtěžují. Musím si vybrat třídu čekání nebo CPU a poté vybrat instanci, než budu moci získat informace o hlavních příkazech SQL nebo nejlepších relacích. Pokud se dostatečně ponořím do EM12c, mohu získat obrazovku jako je následující.

Konečně jsem se konečně někam dostal! Vidím nejlepší příkazy SQL a nejlepší relace. Všimněte si zvýrazněné části. Toto je detail pro 5minutové okno. Pětiminutové okno je znázorněno stínovaným rámečkem v grafu využití CPU níže pro danou instanci.

V EM12c mohu přetáhnout stínované pole na jiný čas a informace o nejvyšších SQL a hlavních relacích se změní, aby odpovídaly. Nemohu to však změnit na 10minutový interval nebo jiné časové období. Zasekl jsem se na 5 minutách.

Nyní to srovnejme s Lighty. Už jsme viděli výkonnostní graf stejně jako EM12. Pod tímto grafem výkonu v Lighty je podokno podrobností horních příkazů SQL. Nemusel jsem na nic klikat, abych získal nejlepší příkazy SQL.

Hned vidím jeden rozdíl mezi Lighty a EM12c. Moje nejlepší příkazy SQL nejsou omezeny pouze na CPU nebo konkrétní třídu čekání. Pokud chci omezit informace, mohu si vybrat z nabídky nad grafem výkonu.

Obvykle mám vybráno Vše, ale pokud chci, mohu zobrazit pouze CPU. Lighty mě neomezuje jako EM12c, pokud se nerozhodnu podmnožit informace.

Všimněte si v horním SQL, že je mi prezentována časová osa událostí pro tento SQL. Můžeme například vidět, že nejvyšší příkaz SQL v seznamu využívá hodně CPU. Ostatní příkazy SQL v seznamu spouštějí a zastavují využití procesoru, zobrazeno světle zeleně. Uživatelské I/O je zde současně zobrazeno modře. Pokud rozbalím příkaz SQL, mohu získat rozpis tohoto příkazu SQL.

Pouhým kliknutím na znaménko plus vedle příkazu SQL vidím, že tento příkaz má dva různé plány provádění a jeden z nich spotřebovává 93,92 % celkového využití CPU. Pokud tento plán rozšířím, uvidím, kde tráví čas, rozdělený podle událostí čekání.

Pojďme si to tedy zrekapitulovat. Spustil jsem Lighty a okamžitě se mi zobrazily moje nejlepší příkazy SQL a jediným kliknutím vím, že ten nejlepší má plán provádění náročný na CPU. To je podle mě super rychlé a snadné. EM12c ztěžuje přístup k těmto informacím a EM12c mi neukáže, kdy příkaz SQL začal spotřebovávat CPU a kdy přestal jako grafy, které poskytuje Lighty.

Pokud kliknu na příkaz SQL, podobně jako v EM12c, Lighty mi zobrazí statistiky konkrétního SQL. Pokud kliknu na kartu Použití, uvidím všechny relace, které provedly toto prohlášení. Všimněte si, že graf ukazuje časovou osu, kdy tato relace spotřebovávala daný prostředek pro tento příkaz SQL. EM12c mi takovou úroveň detailů neukáže.

S výše uvedeným snadno vidím, že se jedná o několik relací, které provádějí stejný příkaz v různých časech.

Pamatujete si, že mě EM12c donutil vybrat si instanci pro tuto databázi Oracle RAC? V Lighty nemusím tuto volbu dělat. Ale můžu docela snadno. Lighty si je vědom RAC a detekoval více instancí. Ve výchozím nastavení mám vybrané všechny instance. Jednoduchá rozbalovací nabídka mi umožňuje vybrat jednu z nich a informace na obrazovce se automaticky přizpůsobí právě této instanci.

Pamatujte v EM12c, kde toto stínované okno představovalo 5minutový časový úsek. V Lighty jsou podrobnosti SQL a relace pro celý graf. Pokud chcete 5minutové okno, můžete si vybrat možnost 5 minut nad grafem. Ve výchozím nastavení je vybráno 60minutové okno.

A mohu si vybrat i další možnosti, včetně vlastního rozsahu data/času. V EM12c je graf na 1 hodinu a nemohu to změnit.

EM12c má svou ASH Analytics, která mi umožňuje podívat se na výkon v minulosti. Ale vždy jsem s tím měl problémy. S ASH Analytics (která mi umožňuje zobrazit historii aktivních relací) mohu změnit toto šedé okno na něco jiného než 5 minut. Mně ale EM12c data prostě nikdy nevrátí. Možná mám něco špatně s prostředím EM12c. Ale Lightly pracuje hned po vybalení s historickými daty ASH. Řekněme, že mi zavolali ohledně problému s výkonem, ke kterému došlo dnes ráno mezi 8:00 a 9:00. Jednoduše vyberu vlastní časový rozsah.

V EM12c jsem nucen přejít na jinou webovou stránku, Výkon –> ASH Analytics.

Zatím jste se pravděpodobně chytili myšlenky, že si myslím, že Lighty je rychlý a snadný způsob, jak získat většinu stejných informací, jaké mohu získat z EM12c. A měli byste pravdu! Zde je další oblast, která se mi na Lighty líbí. Pokud půjdu do okna –> Monitorování více databází, uvidím grafy mnoha různých metrik výkonu pro více databází. Zde je příklad. Na první pohled mohu sledovat více databází na jedné obrazovce. EM12c mi to nedovolí. Vidím, že databáze úplně vpravo je docela nečinná, zatímco databáze uprostřed dostává dost velký zásah. Posouváním stránky dolů se mi zobrazí grafy pro mnoho metrik:

  • Analyzuje
  • Uživatelské hovory
  • Transakce
  • Čte a zapisuje
  • Latence disku
  • Propustnost I/O disku
  • Ceny přenosu globální mezipaměti
  • Míra generování opakování
  • Provoz v síti

V EM12c bych musel navštívit příliš mnoho stránek, abych získal stejné informace, které mi Lighty poskytuje na jedné stránce.

Všechny mé příklady se spoléhají na stejné balíčky Diagnostics and Tuning Pack, které mám licencované. Pokud je nelicencujete, Lighty poskytuje podobnou funkcionalitu s Statspack a jejich verzí L-ASH (Lighty ASH).

Celkově vzato si myslím, že Lighty je skvělý nástroj pro DBA, který je zodpovědný za ladění výkonu. Cena je také velmi rozumná. Čím více nástroj používám, tím více si uvědomuji, jak rychle mohu získat informace. Mohu věci zapínat nebo vypínat ne více než dvěma kliknutími, abych mohl snadno proniknout ke kořenové příčině mých problémů s výkonem. Doporučuji všem správcům Oracle DBA, aby si stáhli zkušební verzi a zjistili, zda je tento produkt pro ně vhodný. Lighty lze nalézt zde:http://www.orachrome.com/en/index.html


  1. Pár klíč-hodnota v PostgreSQL

  2. Jak načíst data dvou sloupců ve formátu A, B v Oracle

  3. WAMP Nelze přistupovat k místní síti 403 Zakázáno

  4. Eliminace PostgreSQL Split-Brain ve vícecloudových databázích