Interpretar Resultado do TKPROF

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

Informações do Ambiente:
* Versão do Oracle: 10 XE
* Sistema Operacional: Vista

Ola.. bom dia,
Gostaria de uma ajuda para interpretar o resultado de um TKPROF
executei a query duas vezes montada de forma diferente...

Selecionar tudo

>>>>ORIGINAL
call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.29       0.26          3         63          0           0
Fetch        1      8.39       8.65         48     207474          0          13
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        3      8.68       8.92         51     207537          0          13

>>>>ALTERADO
call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.51       0.54          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      4.29       5.15          0      45538          0        6046
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        3      4.80       5.69          0      45538          0        6046


>>>>ORIGINAL
Misses in library cache during parse: 1
Misses in library cache during execute: 1
Optimizer mode: ALL_ROWS
Parsing user id: 38 
>>>>ALTERADO
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 38     (recursive depth: 1)
qualquer comentario sera bem vindo...
Obrigado
Abraçs
ruevers
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 324
Registrado em: Sex, 02 Jun 2006 1:48 pm
Localização: sp
Contato:

Vão lá...vou tentar...de forma bem resumida...e sem viadagem..auauauau

Selecionar tudo

call     count       cpu    elapsed       disk      query    current        rows 
------- ------  -------- ---------- ---------- ---------- ----------  ---------- 
Parse        1      0.00       0.00          0          0          0           0 
Execute      1      0.29       0.26          3         63          0           0 
Fetch        1      8.39       8.65         48     207474          0          13 
------- ------  -------- ---------- ---------- ---------- ----------  ---------- 
total        3      8.68       8.92         51     207537          0          13 

PARSE ...quer dizer quanto recurso levou para interpretar o select.
EXECUTE ....quanto recurso levou para executar a querie no banco.
FECTH ...quanto de recurso levou na operação de transporte dos dados.

onde o RECURSO....é o que está em cima....cpu, elapsed(tempo) e etc...

ou seja quanto menos, melhor.... sendo que o COUNT quer dizer quantas vezes esse comando foi feito na sessão...poderia ser muitos...

Espero ter ajudado...

[]´s
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

ola reuves.. obrigado pela dica...
soltaram esse trem na minha mao e estou tendo q me virar

só pra esclarecer... pelo q você explicou o segundo (>>>>ALTERADO) esta melhor que o primeiro??


tks...
ruevers
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 324
Registrado em: Sex, 02 Jun 2006 1:48 pm
Localização: sp
Contato:

Sim, o mais importante é o tempo gasto ser menor...a unica coisa que me deixou encucado foi que parece que o segundo retorna mais linhas....
o resultado do select sempre traz a mesma informação dos dois.
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

ola Anderson...

neste caso era um programa feito no forms 6i, onde tinha o bloco basetable, baseado numa view, ele trazia os 13 primeiros referentes a quantidade de registros por vez do bloco, a aplicacao foi customizada para 3 camadas, agora passamos para package utilizando refcursor e bulk collect.... dai ele descarrega tudo de uma vez...

talvez esta tenha sido a diferenca do retorno de linhas...

vlw
ruevers
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 324
Registrado em: Sex, 02 Jun 2006 1:48 pm
Localização: sp
Contato:

Então foi isso...mas como disse o importante é sempre gastar menos recursos e tempos, no final isso é que importa.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante