Otimizando a PGA
Eu gosto de dizer que temos que reconhecer que o Oracle é mais inteligente que nós.
São 30 anos de Bancos de Dados, e o conhecimento de milhares de profissionais atuando em milhões de ambientes, tudo embutido. Eu não posso superar isto.
Por isto que quando o Banco tem um problema de lentidão relacionado a PGA (como direct path read e direct path write), pergunto logo ao Oracle até onde a adição de memória ao PGA_AGGREGATE_TARGET irá minimizar este gargalo.
A View V$PGA_TARGET_ADVICE – como a V$DB_CACHE_ADVICE – é alterada dinamicamente com a carga do servidor.
No exemplo abaixo, é demonstrado que eu não terei benefício mesmo se aumentar a PGA em 8 vezes.
É Performance Tuning com método – sem adivinhação.
SQL> SELECT PGA_TARGET_FACTOR, PGA_TARGET_FOR_ESTIMATE, ESTD_PGA_CACHE_HIT_PERCENTAGE, ESTD_EXTRA_BYTES_RW, ESTD_OVERALLOC_COUNT FROM V$PGA_TARGET_ADVICE ORDER BY 1;
PGA_TARGET_FACTOR PGA_TARGET_FOR_ESTIMATE ESTD_PGA_CACHE_HIT_PERCENTAGE ESTD_EXTRA_BYTES_RW ESTD_OVERALLOC_COUNT
----------------- ----------------------- ----------------------------- ------------------- --------------------
.125 939524096 92 3.5117E+10 689
.25 1879048192 93 3.1459E+10 606
.5 3758096384 98 1.0134E+10 124
.75 5637144576 100 1949734912 0
1 7516192768 100 279223296 0
1.2 9019430912 100 0 0
1.4 1.0523E+10 100 0 0
1.6 1.2026E+10 100 0 0
1.8 1.3529E+10 100 0 0
2 1.5032E+10 100 0 0
3 2.2549E+10 100 0 0
4 3.0065E+10 100 0 0
6 4.5097E+10 100 0 0
8 6.0130E+10 100 0 0
14 rows selected.
SQL>
Muito legal a iniciativa, só faltou descrever como interpretar o resultado do select.
Implemente esse select no meu banco, obtive resultados diferentes, obviamente, mas não se interpretar.
Se puder ajudar fico grato, use o e-mail acima.
Obrigado