29.12.2013 Aufrufe

Fehlerbehebung und Optimieren der Datenbankleistung

Fehlerbehebung und Optimieren der Datenbankleistung

Fehlerbehebung und Optimieren der Datenbankleistung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

dass eine Unterabfrage zusammengeführt wird. Diese Optimierungsrichtlinie für<br />

die Abfrageumschreibung kann nicht auf eine bestimmte Unterabfrage ausgerichtet<br />

werden. Die Umsetzung kann nur auf Anweisungsebene aktiviert o<strong>der</strong> inaktiviert<br />

werden.<br />

SELECT S.S_NAME, S.S_ADDRESS, S.S_PHONE, S.S_COMMENT<br />

FROM "Samp".PARTS P, "Samp".SUPPLIERS S, "Samp".PARTSUPP PS<br />

WHERE P_PARTKEY = PS.PS_PARTKEY AND S.S_SUPPKEY = PS.PS_SUPPKEY<br />

AND P_SIZE IN (35, 36, 39, 40)<br />

AND P_TYPE = ’BRASS’<br />

AND S.S_NATION IN (’INDIA’, ’SPAIN’)<br />

AND PS.PS_SUPPKEY NOT IN (SELECT S1.S_SUPPKEY<br />

FROM "Samp".SUPPLIERS S1<br />

WHERE S1.S_NATION = ’CANADA’)<br />

ORDER BY S.S_NAME<br />

<br />

Möglicherweise sind bestimmte Optimierungsrichtlinien für die Abfrageumschreibung<br />

nicht anwendbar, wenn an<strong>der</strong>e Umsetzungen zur Abfrageumschreibung auf<br />

eine Anweisung angewendet werden. Kann eine Richtlinienanfor<strong>der</strong>ung zum Aktivieren<br />

einer Umsetzung nicht angewendet werden, wird eine Warnung zurückgegeben.<br />

Beispielsweise ist ein Anfor<strong>der</strong>ungselement für die Aktivierung <strong>der</strong><br />

INLIST2JOIN-Umschreibung mit einem Vergleichselement als Ziel, das durch eine<br />

an<strong>der</strong>e Abfrageumsetzung aus <strong>der</strong> Abfrage entfernt wurde, nicht anwendbar. Eine<br />

erfolgreiche Anwendung einer Optimierungsrichtlinie für die Abfrageumschreibung<br />

kann sogar die Anwendbarkeit an<strong>der</strong>er Umsetzungsregeln für die Abfrageumschreibung<br />

än<strong>der</strong>n. Eine Anfor<strong>der</strong>ung zum Umsetzen einer IN-Liste in einen<br />

Tabellenausdruck kann z. B. verhin<strong>der</strong>n, dass eine an<strong>der</strong>e IN-Liste in einen Tabellenausdruck<br />

umgesetzt wird, da das Optimierungsprogramm nur eine einzige<br />

INLIST2JOIN-Umsetzung pro Abfrageblock anwendet.<br />

Richtlinien zur Planoptimierung:<br />

Planoptimierungsrichtlinien werden in <strong>der</strong> auf Aufwandsberechnungen basierenden<br />

Phase <strong>der</strong> Optimierung angewendet, in <strong>der</strong> Zugriffsmethoden, Joinmethoden,<br />

Joinreihenfolgen <strong>und</strong> an<strong>der</strong>e Details des Ausführungsplans für die Anweisung bestimmt<br />

werden.<br />

Planoptimierungsrichtlinien brauchen nicht alle Aspekte eines Ausführungsplans<br />

anzugeben. Nicht angegebene Aspekte des Ausführungsplans werden durch das<br />

Optimierungsprogramm auf <strong>der</strong> Gr<strong>und</strong>lage von Aufwandsberechnungen ermittelt.<br />

Es gibt zwei Kategorien von Planoptimierungsrichtlinien:<br />

v accessRequest – Eine Zugriffsanfor<strong>der</strong>ung gibt eine Zugriffsmethode zur Erfüllung<br />

eines Tabellenverweises in einer Anweisung an.<br />

v joinRequest – Eine Joinanfor<strong>der</strong>ung gibt eine Methode <strong>und</strong> eine Reihenfolge für<br />

die Ausführung einer Joinoperation an. Joinanfor<strong>der</strong>ungen bestehen wie<strong>der</strong>um<br />

aus Zugriffs- o<strong>der</strong> an<strong>der</strong>en Joinanfor<strong>der</strong>ungen.<br />

Optimierungsrichtlinien für Zugriffsanfor<strong>der</strong>ungen entsprechen den Datenzugriffsmethoden<br />

des Optimierungsprogramms, wie zum Beispiel Tabellensuche, Indexsuche<br />

<strong>und</strong> Vorablesezugriff über Listen. Die Richtlinien für Joinanfor<strong>der</strong>ungen entsprechen<br />

den Joinmethoden des Optimierungsprogramms, wie zum Beispiel Join<br />

mit Verschachtelungsschleife (Nested Loop Join), Hash-Join <strong>und</strong> Mischjoin (Merge<br />

Join). Jede Zugriffsanfor<strong>der</strong>ung <strong>und</strong> jede Joinanfor<strong>der</strong>ung werden durch ein entsprechendes<br />

Zugriffsanfor<strong>der</strong>ungs- bzw. Joinanfor<strong>der</strong>ungselement im Schema <strong>der</strong><br />

Optimierungsrichtlinie für Anweisungen dargestellt.<br />

Kapitel 3. Faktoren mit Auswirkung auf die Leistung 401

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!