set timing on, autotrace przez jdbc
MarcinP - 13-11-2006 00:44
set timing on, autotrace przez jdbc
Czesc, Jakis czas temu, uprzejmi grupowicze oswiecili mnie, i podpowiedzieli uzywanie opcji set timinng i set autotrace do mierzenia czasu w jakim oracle wykonuje zapytanie.
Czy mozna przekazac dane autotrace'a i timing przez oracle do javy? (laczac sie z oraclem przez jdbc) moze ktos moglby sluzyc rada lub pomocnym linkiem ?
Pozdrawiam Marcin
dap - 13-11-2006 00:44
MarcinP wrote: > Czesc, > Jakis czas temu, uprzejmi grupowicze oswiecili mnie, i podpowiedzieli > uzywanie opcji > set timinng i set autotrace do mierzenia czasu w jakim oracle wykonuje > zapytanie. > > Czy mozna przekazac dane autotrace'a i timing przez oracle do javy? > (laczac sie z oraclem przez jdbc) > moze ktos moglby sluzyc rada lub pomocnym linkiem ?
Wydaje mi sie, ze set timi i set autot sa komendami SQL*Plus a nie SQL czy PL/SQL, dlatego raczej nie mozna wykonywach ich przez jdbc.
dap
Michał Kuratczyk - 13-11-2006 00:44
MarcinP wrote: > Czy mozna przekazac dane autotrace'a i timing przez oracle do javy? > (laczac sie z oraclem przez jdbc) 'set timing' to jedynie opcja sqlplusa, ale to żadna strata, bo tu nie ma absolutnie żadnej magii - równie dobrze możesz w javie mierzyć czas od wysłania zapytania do otrzymania wyniku. Natomiast autotrace na pewno jakoś można, bo jest dostępny we wszystkich chyba narzędziach do Oracle, a choćby Oracle SQL Developer (aka Raptor) jest napisany w Javie właśnie. Co do szczegółów, to ja ich nie podam, ale poszukaj, to pewnie znajdziesz.
I jeszcze tylko uwaga - pamiętaj, że strojenie zapytań rzadko sprowadza się do minimalizacji czasu wykonania - czas jest raczej rzeczą wtórną - zwykle koncentrować należy się na Logical IO / buffer gets (ilość odczytywanych bloków dyskowych). Dodatkowo warto brać pod uwagę latches - im mniej, tym lepiej, bo osiągasz lepszą skalowalność systemu. Więcej (mnóstwo) o strojeniu i wielu innych rzeczach możesz poczytać na asktom.oracle.com.
-- Michał Kuratczyk
MarcinP - 13-11-2006 00:44
> I jeszcze tylko uwaga - pamiętaj, że strojenie zapytań rzadko sprowadza się > do minimalizacji czasu wykonania - czas jest raczej rzeczą wtórną -zwykle > koncentrować należy się na Logical IO / buffer gets (ilość odczytywanych > bloków dyskowych). \
Jasne - a jak (przez jdbc - czyli z poziomu javy) sprawdzic ile blokow przetwarza dane zapytanie ?
zarafiq - 13-11-2006 00:44
MarcinP wrote: > > Jasne - a jak (przez jdbc - czyli z poziomu javy) sprawdzic ile blokow > przetwarza dane zapytanie ? >
select * from sys.v_$sql (v_$sqlarea, v_$sql_plan), etc.
Pozdrawiam zarafiq
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Tworzenie tabeli z =?ISO-8859-2?Q?nazw=B1_ustalan=B1_przez_?==?ISO-8859-2?Q?usera?=
[ORACLE] - jak =?ISO-8859-2?Q?zwr=F3ci=E6_list=EA_u=BFytkown?==?ISO-8859-2?Q?ik=F3w_tworzonych_przez_Oracle?=
[PostgreSQL] jak =?ISO-8859-2?Q?pobra=E6_warto=B6=E6_zwracan?==?ISO-8859-2?Q?=B1_przez_funkcj=EA=3F?=
[oracle] =?ISO-8859-2?Q?zmia=BFd=BFony_przez_problem=3A_za?==?ISO-8859-2?Q?pytanie_do_hierarchi?=
[MS SQL] "set names" (mySQL) w MS SQL
[MySQL] Backup tabel przez "BACKUP" i problem z prawami dostępu :(
=?iso-8859-2?q?ORA-12528:_TNS:nas=B3uch:_nowe_po=B3=B1czenia_s=B1_blo kowane_przez_wszystkie?=
=?ISO-8859-2?Q?[MS_SQL]_=A6ledzenie_zapyta=F1_wykonywanych_przez_program? =
=?iso-8859-2?q?edytowanie_danych_z_zewn=EAtrznych_baz_przez_A ccessa?=
3ds max 9 + vray 1.5RC3 i rendering sieciowy przez internet.?
zanotowane.pldoc.pisz.plpdf.pisz.plnatalia97.htw.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|