Automatische SQL Tuning in Oracle Database 10g

Dit artikel bespreekt de nieuwe mogelijkheden van het automatisch tunen van SQL statements in Oracle 10g

Overzicht

In zijn normale modus moet de query optimizer in een zeer korte tijd beslissingen nemen over executie plannen. Dit heeft als resultaat dat de optimizer niet altijd genoeg tijd heeft om genoeg informatie te verkrijgen om de beste beslissingen te kunnen nemen. Oracle 10g stelt de optimizer in staat om in tuning modus te runnen zodat het extra informatie kan verzamelen zodat het aanbevelingen kan doen over hoe bepaalde statements verder getuned kunnen worden. Dit proces kan een aantal minuten duren voor een enkel statement waardoor het ook meer bedoeld is om te gebruiken op resource intensieve statement met een hoge load.

In tuning modus zal de optimizer de volgende analyze uitvoeren:

· Statistics Analysis - De optimizer beveelt het verzamelen van statistieken aan objecten die geen of ongeldige statistieken bevat. Extra statistieken voor deze objecten zullen in een een SQL profile opgeslagen worden.

· SQL Profiling - De optimizer zou de performance kunnen bevorderen door het verzamelen van extra statistieken en het aanpassen van sessie specifieke parameters zoals de OPTIMIZER_MODE. Als deze verbeteringen mogelijk zijn zullen ze opgeslagen worden in een SQL profile. Als deze geaccepteerd worden kan de informatie gebruikt worden door de optimizer als deze in normal modus draaid. In tegenstelling tot een stored outline die het executieplan fixeert, zou een SQL profile nog steeds waarde kunnen hebben al de de inhoud van een tabel drastisch veranderd. Toch is het verstandig om eens in de zoveel tijd de profiles te updaten. SQL profiling wordt niet uitgevoerd als tuning optimizer in limited modus loopt.

· Access Path Analysis - De optimizer onderzoekt het effect op het toegangspad als indexen nieuw worden gemaakt of. De index aanbevelingen zijn gerelateerd aan een specifiek statement zodat waar nodig zal het ook voorstellen om de SQL Access Advisor te gebruiken om de impact te checken die deze indexen zullen hebben op een representatieve workload.

· SQL Structure Analysis - De optimizer doet voorstellen voor alternatieve SQL statements die structuren bevatten die de performance kunnen beïnvloeden. De implementatie van deze voorstellen zal wel nagekeken moeten worden om te controleren of ze valide zijn.

De automatische SQL tuning features zijn toegankelijk vanuit de Enterprise Manager op de "Advisor Central" pagina, of via PL/SQL met de DBMS_SQLTUNE package. Dit artikel zal zich focussen op de PL/SQL API.

 

 

 

Advertentie

>

Poll

Voorkeur
 

Wie is er aanwezig

We hebben 369 gasten online