Schritte zur Aktivierung der pureQuery-Clientoptimierung

Die Aktivierung der pureQuery-Clientoptimierung und die Konfiguration einer JDBC-basierten Java-Anwendung zur statischen SQL-Ausführung ist ein vier Schritte umfassender Prozess. Sie erfassen SQL-Anweisungen, konfigurieren die Anweisungen zu Paketen, binden Pakete, die SQL-Anweisungen in der DB2-Datenbank enthalten, und führen die SQL-Anweisungen statisch aus. Die statische Ausführung von SQL-Anweisungen ist nicht erforderlich, sie ist aber ein Hauptvorteil der pureQuery-Clientoptimierung.

Die Schritte zum Aktivieren der pureQuery-Clientoptimierung sind für eine Standalone-Anwendung oder eine serverbasierte Anwendung einheitlich. IBM® Data Studio begleitet Sie durch den pureQuery-Clientoptimierungsprozess, ist aber nicht erforderlich. Sie legen pureQuery Runtime-Eigenschaften fest und führen die erforderlichen Schritte über die pureQuery-Befehlszeilendienstprogramme aus.

Abbildung 1. Vier pureQuery-Clientoptimierungsschritte zur statischen SQL-Ausführung für eine DB2-Datenbank
Vier Schritte umfassender pureQuery-Clientoptimierungsprozess

Für eine Anwendung kann der Clientoptimierungsprozess mehrmals ausgeführt werden und jeder Schritt im Prozess kann mehrmals ausgeführt werden. Sie können z. B. den Erfassungsschritt mehrmals ausführen, um von der Anwendung ausgeführte SQL-Anweisungen inkrementell zu erfassen. Sie können die erfassten SQL-Daten zusammenführen und konfigurieren sowie binden, nachdem Sie die Erfassung der SQL-Daten abgeschlossen haben. Sie können die Konfigurations-, Binde- und Ausführungsschritte bei jeder Erfassung von SQL-Daten ausführen.

Die vier grundlegenden Schritte lauten wie folgt:
  1. Erfassen

    Führen Sie die JDBC-Anwendung in einem Modus aus, in dem Informationen zu den SQL-Anweisungen erfasst werden, während sie in der Anwendung ausgeführt werden. Die erfassten Informationen enthalten Informationen, die zum Binden der SQL-Anweisungen der Anwendung erforderlich sind. Informationen wie die SQL-Zeichenfolge, Parametermetadaten, Ergebnismengenmetadaten und Stack-Traces werden in einer pureQueryXML-Datei erfasst. Sie können SQL-Daten während der Test- oder Entwicklungsphase erfassen.

    Sie können mehrere Dateien erstellen, die erfasste SQL-Daten enthalten. Sie können den Erfassungsschritt während des Clientoptimierungsprozesses mehrmals ausführen bzw. den Clientoptimierungsprozess mehrmals ausführen. Sie können zudem mit dem Dienstprogramm GeneratePureQueryXml SQL-Daten aus pureQueryXML-Dateien erstellen. Sie müssen dann mit dem pureQuery-Dienstprogramm Merge mehrere Dateien zusammenführen, die erfasste SQL-Daten enthalten, bevor Sie das pureQuery-Dienstprogramm Configure im nächsten Schritt verwenden.

  2. Konfigurieren

    Sie bereiten die erfassten SQL-Anweisungen für den Bindeschritt vor. Dieser Schritt ist nur erforderlich, wenn SQL-Anweisungen bei der pureQuery-Clientoptimierung statisch ausgeführt werden. Bei diesem Schritt organisieren und gruppieren Sie SQL-Anweisungen zu Anweisungsgruppen. Mit den Anweisungsgruppen werden im Bindeschritt DB2-Pakete erstellt. Sie können den Anweisungsgruppen auch Paketinformationen zuweisen. Zu Paketinformationen gehören Informationen wie der Paketname, die Objektgruppen-ID und das Konsistenztoken. Sie bereiten eine pureQueryXML-Datei mit dem pureQuery-Dienstprogramm Configure auf den Bindeschritt vor.

  3. Binden

    Führen Sie die Bindung für den Zieldatenbankserver aus, auf dem die SQL-Anweisungen ausgeführt werden. Das pureQuery-Dienstprogramm StaticBinder führt mithilfe der Services von IBM Data Server Driver für JDBC und SQLJ eine ferne Bindung aus. Das Dienstprogramm StaticBinder implementiert SQL-Anweisungen, indem es Pakete erstellt, die die SQL-Anweisungen in der Datenbank enthalten, und die Pakete für die Datenbank bindet. Das Dienstprogramm StaticBinder basiert auf dem DRDA-Protokoll und kann auch DBRM-Dateien für DB2 for z/OS generieren, die mit dem DSN-Befehl BIND für lokale Bindung verwendet werden können. Die Bindung ist eine Implementierungsaktivität. Dieser Schritt ist nur erforderlich, wenn SQL-Anweisungen bei der pureQuery-Clientoptimierung statisch ausgeführt werden.

  4. Statische Ausführung

    Dieser Schritt ist nur erforderlich, wenn SQL-Anweisungen bei der pureQuery-Clientoptimierung statisch ausgeführt werden. Führen Sie die JDBC-Anwendung in einem Modus aus, in dem die von der Anwendung ausgegebenen SQL-Anweisungen statisch ausgeführt werden. pureQuery Runtime legt fest, wann eine SQL-Anweisung statisch ausgeführt wird, indem die SQL-Anweisung und SQL-Informationen wie SQL-Zeichenfolge, Cursor und Vorbereitungsattribute wie der Ergebnistyp, der gemeinsame Zugriff und die Lebensdauer verglichen werden. Dieser Schritt ist nur erforderlich, wenn SQL-Anweisungen bei der pureQuery-Clientoptimierung statisch ausgeführt werden.

Während des Entwicklungs- und Testprozesses können Entwickler eine Anwendung häufig ändern und inkrementelle Releases für Test- oder Produktionszwecke bereitstellen. Die pureQuery-Clientoptimierung kann inkrementell oder in der letzten Systemtestphase durchgeführt werden, wenn alle Module auf integrierte Weise getestet werden. Die Entwickler können weiterhin SQL-Anweisungen entwickeln, die dynamisch ausgeführt werden und die nicht vom Umstieg auf statische SQL-Ausführung betroffen sind.


Feedback