Positionen, von denen Sie eine SQL-Anweisung für die Einzelabfragenoptimierung erfassen können

Sie können SQL-Anweisungen von diversen Positionen erfassen.

Allgemeine Voraussetzungen für die Erfassung

Für jede Position, von der Sie Daten erfassen, müssen drei Voraussetzungen erfüllt sein. Für einige Positionen müssen zusätzliche Voraussetzungen erfüllt sein.

Positionen, von denen Sie SQL-Anweisungen erfassen können

SQL-Editor oder Routineneditor
Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle im Editor und wählen Sie Optimierung starten aus.
Anmerkung: Wenn eine Anweisung, die Sie von einem Routineneditor erfassen, lokale Variablen enthält, werden diese Variablen während der Erfassung in typisierte Parametermarken konvertiert.

Für DB2 for Linux, UNIX, and Windows, Version 9.7.4 oder höher: Wenn Sie eine gespeicherte SQL-Prozedur in einem Routineneditor ausführen, können Sie im Fenster Ausführen Ist-Laufzeitinformationen zu den Zugriffsplänen für die Anweisungen in der gespeicherten Prozedur erfassen. Wählen Sie die Option Leistungsinformationen aus der Datenbank zusammenstellen und dann die Option Ist-Daten zum Zugriffsplan aus der Datenbank zusammenstellen aus. Wählen Sie in der Sicht Profilermittlungsdaten die Anweisungen aus, die Sie optimieren wollen, indem Sie die Steuertaste gedrückt halten und auf diese Anweisungen klicken. Klicken Sie mit der rechten Maustaste auf die Auswahl und klicken Sie auf Optimierung starten.

Datenquellenexplorer
Klicken Sie mit der rechten Maustaste auf ein beliebiges dieser Objekte und wählen Sie Optimierung starten aus.
Einschränkung: Für die Erfassung aus diesen Quellen unter DB2 for z/OS müssen Sie das Zugriffsrecht SELECT für den Systemkatalog haben.
  • Paket
  • Gespeicherte SQL-Prozedur
  • Trigger, der kompilierte SQL-Anweisungen verwendet, d. h. ein Trigger, der einem Paket zugeordnet ist
  • Benutzerdefinierte Funktion, die kompilierte SQL-Anweisungen verwendet, d. h. eine benutzerdefinierte Funktion, die einem Paket zugeordnet ist
  • Sicht
DB2 for Linux, UNIX, and Windows, DB2 for z/OS und andere Positionen

Zur Erfassung von SQL-Anweisungen aus den folgenden Quellen müssen Sie zuerst die folgenden Schritte ausführen, um den Workflowassistenten zu öffnen:

  1. Klicken Sie im Datenquellenexplorer mit der rechten Maustaste auf eine Verbindung und wählen Sie Verbinden aus, um die Verbindung zu erweitern, klicken Sie mit der rechten Maustaste auf den Datenserver und wählen Sie Analysieren und optimieren > Optimierung starten aus. Der Workflowassistent wird im Abschnitt Erfassen geöffnet.
  2. Wählen Sie auf der linken Seite des Abschnitts Erfassen die Position der SQL-Anweisung aus, die Sie optimieren wollen.
Sie können von den folgenden Positionen Daten erfassen:
Anweisung eingeben oder einfügen
Wählen Sie Text eingeben links im Abschnitt Erfassen aus.
Datei
Wählen Sie Datei links im Abschnitt Erfassen aus.
XML-Datei, die eine Abfrageworkload definiert
Selbst wenn die Datenbank oder das Subsystem, mit der/dem Sie verbunden sind, keine aktive Lizenz zum Optimieren von Abfrageworkloads hat, können Sie eine SQL-Anweisung optimieren, die in der Definition einer Abfrageworkload enthalten ist.
InfoSphere Optim Performance Manager-Repository
Voraussetzungen und Anweisungen für die Erfassung aus dieser Quelle finden Sie in SQL-Anweisungen aus InfoSphere Optim Performance Manager erfassen.
Quellen in DB2 for z/OS
  • Katalogplan oder Pakete

    Wenn beim Binden des Pakets, in dem sich eine Anweisung befindet, EXPLAIN auf YES gesetzt war, wird sie zusammen mit Informationen zu ihrem tatsächlichen Zugriffsplan erfasst.

  • DB2 Query Monitor for z/OS
  • Tabelle DSN_FUNCTION_TABLE
  • Tabelle DSN_STATEMNT_TABLE
  • Tabelle PLAN_TABLE
  • QMF
  • QMF-HPO
  • Gespeicherte SQL-Prozedur
  • Anweisungscache

    Anweisungen aus dieser Speicherposition werden zusammen mit ihren tatsächlichen Zugriffsplänen erfasst.

  • Benutzerdefiniertes SQL-Repository

Informationen zu den Berechtigungen und Zugriffsrechten, die für die Erfassung aus diesen Quellen erforderlich sind, finden Sie in Erforderliche Berechtigungen und Zugriffsrechte zum Erfassen von SQL-Anweisungen aus DB2 for z/OS.

Quellen in DB2 for Linux, UNIX, and Windows
  • Paketcache

    Wenn beim Binden des Pakets, in dem sich eine Anweisung befindet, EXPLAIN auf YES gesetzt war, wird sie zusammen mit Informationen zu ihrem tatsächlichen Zugriffsplan erfasst.

    Alle Vorkommen erfasster Anweisungen in den angegebenen Paketen werden gespeichert, wenn Sie eine Abfrageworkload aus diesem Typ von Quelle erstellen. Wenn Sie die Option EXPLAIN-Informationen für die erfassten Anweisungen speichern auswählen, werden die EXPLAIN-Informationen für jedes Vorkommen einer Anweisung ebenfalls gespeichert.

  • Pakete

    Wenn beim Binden des Pakets, in dem sich eine Anweisung befindet, EXPLAIN auf YES gesetzt war, wird sie zusammen mit Informationen zu ihrem tatsächlichen Zugriffsplan erfasst.

    Alle Vorkommen erfasster Anweisungen in den angegebenen Paketen werden gespeichert, wenn Sie eine Abfrageworkload aus diesem Typ von Quelle erstellen. Wenn Sie die Option EXPLAIN-Informationen für die erfassten Anweisungen speichern auswählen, werden die EXPLAIN-Informationen für jedes Vorkommen einer Anweisung ebenfalls gespeichert.

  • EXPLAIN-Tabellen

    Sofort nach der Erfassung können Sie die tatsächlichen Zugriffspläne für eine Anweisung anzeigen, indem Sie mit der rechten Maustaste auf diese klicken und Zugriffsplandiagramm anzeigen auswählen.

    Für statische Anweisungen: Wenn erfasste Anweisungen mehrmals in den angegebenen Paketen vorhanden sind, werden nur die EXPLAIN-Informationen für das letzte Vorkommen der Anweisung gespeichert, wenn Sie eine Abfrageworkload aus diesem Quellentyp erstellen. Anweisungen gelten als Duplikate, wenn Paketname, Paketschema, Abschnittsnummer, Anweisungsnummer und Anweisungstext gleich sind. Auch wenn Sie diese Option nicht auswählen, wird nur das letzte Vorkommen jeder Anweisung in der Abfrageworkload gespeichert.

  • Ereignismonitortabellen

    Die Erfassung aus diesem Typ von Quelle erfordert ein vorheriges Erstellen und Ausführen eines ACTIVITIES-Ereignismonitors zum Erfassen der Laufzeitaktivität für eine Datenbank. Sofort nach der Erfassung können Sie die tatsächlichen Zugriffspläne für eine Anweisung anzeigen, indem Sie mit der rechten Maustaste auf diese klicken und Zugriffsplandiagramm anzeigen auswählen.

    Wenn erfasste Anweisungen mehrmals in den angegebenen Paketen vorhanden sind, werden nur die EXPLAIN-Informationen für das letzte Vorkommen der Anweisung gespeichert, wenn Sie eine Abfrageworkload aus diesem Quellentyp erstellen. Anweisungen gelten als Duplikate, wenn die ausführbaren IDs identisch sind. Auch wenn Sie diese Option nicht auswählen, wird nur das letzte Vorkommen jeder Anweisung in der Abfrageworkload gespeichert.

  • Gespeicherte SQL-Prozeduren

Feedback