Verwaltung und Programmierung für OS/400
Informationen zu DB2-Leistungsüberlegungen finden Sie im Handbuch DB2 for 0S/400 SQL Programming. Diese Veröffentlichung enthält eine Fülle von Informationen, etwa
zur effektiven Verwendung von SQL-Indizes, zur Optimierung der Leistung von
Verknüpfungsabfragen und zur Optimierung der Leistung bei der Auswahl von
Daten aus mehr als zwei Tabellen.
Verwenden Sie die folgenden Verfahren für die SQL-Sprachumgebung, um die
Leistung zu optimieren.
- Verringern Sie die Anzahl der Benutzer-IDs, die eine Verbindung zur
Datenbank herstellen, um das Wiederherstellen der Verbindung zu der Datenbank
zu vermeiden. Die SQL-Sprachumgebung ordnet jeder fernen Verbindung zu
einer Datenbank, die hergestellt wird, ein Benutzerprofil und ein Kennwort
zu. Wenn die Variablen LOGIN und PASSWORD nicht mit dem Benutzerprofil
und Kennwort übereinstimmen, die einer geöffneten Verbindung zugeordnet sind,
wird die Verbindung geschlossen und erneut hergestellt, und die Werte von
LOGIN und PASSWORD werden der erneut geöffneten Verbindung zugeordnet.
- Verwenden Sie die Net.Data-Variablen START_ROW_NUM und
RPT_MAX_ROWS, um die Größe der zurückgegebenen Tabellen zu verringern.
Wenn in einer SQL-Anweisung SELECT die Ergebnismenge hunderte von Datensätzen
enthält, übertragen Sie eine Untermenge der Ergebnismenge an den Browser,
indem Sie START_ROW_NUM wie einen verschiebbaren Cursor und darüber hinaus
RPT_MAX_ROWS verwenden, um die Anzahl der zurückgegebenen Datensätze zu
beschränken. Sie müssen beachten, daß Net.Data die Abfrage jedes
Mal durchführt, da der Status nicht angegeben wird. Sie können jedoch
die Net.Data-Unterstützung für permanente Makros verwenden, um die
Ergebnismenge in einer Net.Data-Tabelle zu speichern, die bis zum Ende
der Transaktion bestehen bleibt. Informationen zu permanenten
Net.Data-Makros finden Sie in Transaktionsverwaltung mit permanenten Makros.
- Ziehen Sie den Aufruf einer gespeicherten Prozedur in Erwägung, die
statisches SQL verwendet. Dynamisches SQL wird zur Laufzeit
vorbereitet, während statisches SQL bei der Vorkompilierung vorbereitet
wird. Die SQL-Sprachumgebung verwendet dynamisches SQL, so daß
SQL-Anweisungen zur Programmlaufzeit ausgeführt werden können. Da die
Vorbereitung von Anweisungen zusätzliche Verarbeitungszeit erfordert, ist das
statische SQL unter Umständen effizienter.
Beachten Sie, daß die SQL-Steuerkomponente ab OS/400 V4R2 einen Cache für
vorbereitete Anweisungen hat. Im Cache speichert die
SQL-Steuerkomponente Informationen zu vorbereiteten Anweisungen und hält diese
Informationen im Systemspeicher. Wenn die gleiche Anweisung erneut
ausgeführt wird, sei dies auch durch einen anderen Benutzer und einen anderen
Job, kann die Anweisung viel schneller ausgeführt werden. Der
systemweite Cache für vorbereitete Anweisungen ist Teil der normalen
SQL-Verarbeitung, für dessen Konfiguration und Aktivierung keine
Benutzereingriffe erforderlich sind. Der Cache trägt unter Umständen
zur Verringerung von Leistungsvorteilen bei, die statisches SQL gegenüber
dynamischem SQL hat.
[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]