Database Reference
In-Depth Information
Die beschriebene Standardmethode der Hidden SQLs hat viele Einschränkungen. Sie
unterstützt beispielsweise lediglich Selects. Aber auch nicht alle: z. B. sind keine Selects mit
einer With-Klausel (subquery factoring) dort erlaubt.
Ich habe lange überlegt, ob eine Beschreibung dieser Methode in diesem Buch sinnvoll
ist.EinerseitssinddieChancenderpraktischenAnwendungdiesesVerfahrensziemlich
gering,dieGefahr,dassmandieseMethodemissbraucht,istimGegenteilhoch.Anderer-
seits ist diese Methode von Oracle offiziell unterstützt, und wenn man sie beim Tuning ein
paar Mal erfolgreich anwendet, hat diese Beschreibung ihren Dienst getan.
18.7
Hidden Hints in den SQL-Anweisungen
Beim SQL-Tuning einer Anwendung eines Drittanbieters sind normalerweise keine Än-
derungenderproblematischenSQL-Anweisungenmöglich.Dasisteineschwierigeaber
nicht hoffnungslose Situation.
Leonid: „ Peter, was machst Du in so einer Situation?
Peter: „ Ich setze das automatische SQL-Tuning ein .“
L.: „ Im Prinzip ist es nicht verkehrt. Es wäre ganz richtig gewesen, wenn Du die mit dem
automatischen SQL-Tuning gefundenen Ausführungspläne mit SQL Plan Baselines nachträg-
lich fixiert hättest. Wie würdest Du aber vorgehen, wenn das automatische SQL-Tuning keine
Lösung findet?
P.: „ Dann muss ich wahrscheinlich versuchen, die problematische SQL-Anweisung manu-
ell zu tunen .“
L.: „ Angenommen, Du hast das geschafft. Wenn Du die jeweilige SQL-Anweisung um-
geschrieben hast, hast Du schlechte Karten, weil die Methode mit Hidden SQLs ( s. im
Abschn. 18.6 ) wegen zahlreicher Einschränkungen sehr selten hilft. Angenommen, Du hast das
SQL-Tuning mit Hints gemacht, ohne das Grundgerüst der SQL-Anweisung zu ändern. Wie
kannst Du erreichen, dass die Anwendung Deinen optimierten Ausführungsplan benutzt?
P.: „ Dafür kann ich die bereits beschriebene OSP-Methode gebrauchen .“
L.: „ In diesem Abschnitt beschreibe ich einige Beispiele der Anwendung des OSP-Verfah-
rens und einige weitere Methoden, die genau in so einer Situation helfen können. Diese Me-
thoden bewirken, dass die Optimizer Hints für eine SQL-Anweisung ausgeführt werden, ohne
in diese SQL-Anweisung eingetragen zu sein. Aus diesem Grund heißen diese Methoden ver-
steckte Hints “ ( hidden hints ).“
18.7.1
Hidden Hints mit Stored Outlines
Diese Methode erschien zunächst in der alten Notiz 92202.1 vom MOS. Dieses Verfahren
wurde spater verbessert (s. die Notiz 730062.1 vom MOS ).
Die beiden Methoden erzeugen eine Stored Outline für die originelle SQL-Anweisung,
welche mit Outlines der SQL-Anweisung mit Hints gefüllt ist. Somit wird die SQL-An-
weisung ohne Hints mit dem Ausführungsplan dieser Anweisung mit Hints ausgeführt.
 
Search WWH ::




Custom Search