Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

SQL Trace, Profiling, …a Tuning Lubomír Andrle

Podobné prezentace


Prezentace na téma: "SQL Trace, Profiling, …a Tuning Lubomír Andrle"— Transkript prezentace:

1 SQL Trace, Profiling, …a Tuning Lubomír Andrle Lubomir.andrle@unicorn.eu

2 OWI Za vším hledej waity Komplexní instrumentace Oracle kernelu Velmi jemná granularita Event vs. Wait class V$SESSION

3 Co je to výkon? Otázka: Databáze běží na 100% CPU. Je to známka dobrého nebo špatného výkonu? Záleží… „Výkon“ – Throughput – Response time

4 Co databázi vytěžuje V podstatě… : – Sessiony (bez nich nikdo nic neudělá) – Aplikace, kterým ty sessiony patří – Spouštění kurzorů (samotné SQL) Vytěžují CPU – anebo by chtěly Nevytěžují CPU – jsou IDLE nebo jsou něčím blokovány

5 Metriky databáze Ratios – Buffer cache hit ratio Počet transakcí za minutu Využití CPU ….. Neříkají nám nic o tom, jestli uživatel čeká nebo ne

6 Co má smysl měřit? ČAS – pro konkrétní úlohu – (konkrétního uživatele) – tak jemně, jak je potřeba

7 Response time Odezva pro uživatele – čas, za který je úloha splněna Součet časů všech podúloh – Parse – Načtení dat z tabulek – Přenos na aplikační vrstvu – …

8 Jak měřit response time? Instrumentace kódu Na úrovni Oracle – využít OWI

9 SQL Trace Vždy v rámci jedné session Generuje tracefile Event 10046 Alter session set events '10046 trace name context forever, level 12‘ DBMS_SYSTEM DBMS_MONITOR – Preferovaná metoda od 10g

10 SQL Trace II DBMS_MONITOR – Session_trace_enable – Database_trace_enable …

11 SQL Trace III PARSE, EXEC, FETCH c = CPU time e = Elapsed time r = rows returned p = physical reads cr = consistent reads

12 SQL Trace IV WAIT nam = název eventu ela = elapsed time (mikrosekundy) BINDS dty = datový typ val = value XCTEND – Commit / rollback

13 SQL Trace V Třívrstvá architektura Connection pooling DBMS_SESSION.set_identifier Client_id_trace_enable

14 Profiling TKPROF – parsuje tracefile a provede agregace tkprof

15 Profiling II Alternativy k TKPROF: – OraSRP – TVDXTAT – MOS tooly

16 Profiling III Třívrstvá architektura: – Jeden „request“ je často rozprostřen mezi několik sessions – Sessiony jsou podepsané pomocí request ID Utilita TRCSESS – Spojuje tracefily na základě parametrů – Například client_identifier nebo action

17 Profiling IV Nepoužívejte trace na celou databázi Profilujte relevantní části Pozor na místo na disku

18 Historické metriky ASH (Active session history) – V$ACTIVE_SESSION_HISTORY AWR (Automatic workload repository) – DBA_HIST_% Vyžaduje Enterprise Edition + tuning packy

19 AWR Vytváří snapshoty – Agregovaná data z ASH pro dané období – Data jsou pak zveřejněna pomocí DBA_HIST pohledů – Je nad nimi možné dělat vlastní výpočty a přehledy DBMS_WORKLOAD_REPOSITORY

20 AWR II AWR Report Agregované informace z AWR v textu nebo HTML $ORACLE_HOME/rdbms/admin/awrrpt.sql

21 AWR III ADDM – Automatic database diagnostic monitor – Vyhodnocuje data z AWR a vydává doporučení ADDM Report $ORACLE_HOME/rdbms/admin/addmrpt.sql

22 Shrnutí Response time Tracing Profiling Automaticky sbírané výkonnostní metriky databáze – ASH, AWR, ADDM – reporty

23 Q & A


Stáhnout ppt "SQL Trace, Profiling, …a Tuning Lubomír Andrle"

Podobné prezentace


Reklamy Google