pureQuery クライアント最適化の概要

pureQuery™ クライアント最適化を使用すると、アプリケーション・ソース・コードを変更しなくても、アプリケーション SQL ステートメントの実行を制御できます。 SQL ステートメントの実行を制御するには、アプリケーションから取り込む SQL ステートメントを構成して、pureQuery ランタイム・プロパティーを設定します。

pureQuery クライアント最適化を使用すると、pureQuery Runtime 機能を活用してパフォーマンスを改善させることができます。 例えば、SQL ステートメントを静的に実行して、パフォーマンスの劣るステートメントをより効率的なステートメントに置換することができます。

pureQuery クライアント最適化のプロセス

以下の 4 つのステップにより、データ・アクセス・アプリケーションでの pureQuery クライアント最適化が有効になります。
  1. アプリケーションから SQL ステートメントおよび関連するデータを 1 つ以上の pureQueryXML ファイルに取り込みます。
  2. pureQueryXML ファイルを構成します。 必要に応じて、複数のファイルをマージして 1 つの構成済み pureQueryXML ファイルにします。
  3. SQL ステートメントの静的実行を可能にするために、構成済み pureQueryXML ファイル内の SQL ステートメントに対して BIND 操作を実行します。
  4. SQL ステートメントを静的に実行します。

これらのステップにより、アプリケーションは DB2® データベースに対して SQL ステートメントを静的に実行できます。 静的実行により、アプリケーション・パフォーマンスとセキュリティーが改善される可能性があります。 SQL ステートメントをバインドして静的に実行するステップは、オプションです。 pureQuery Runtime は、ステートメントの動的実行時に SQL ステートメントの実行を制御できます。 アプリケーション SQL ステートメントの実行を制御するために pureQuery Runtime プロパティーを設定してください。

以下の図は、pureQuery クライアント最適化のプロセスと、関連する構成要素を示しています。

図 1. pureQuery クライアント最適化のプロセスと構成要素
pureQuery クライアント最適化のプロセスと構成要素

Java™ アプリケーションでは、pureQuery クライアント最適化のためには Java ライブラリーが必要です。 pureQuery Runtime ライブラリーは Java データベース・ドライバーと共に機能して、アプリケーション SQL ステートメントの実行を制御します。

.NET および DB2 ODBC/CLI アプリケーションでは、pureQuery クライアント最適化のためには IBM® Data Server データベース・ドライバーが必要です。 アプリケーション SQL ステートメントの実行を制御する pureQuery 機能は、データベース・ドライバーに組み込まれます。

Java ベースの pureQuery ユーティリティーである Configure および StaticBinder を使用して、pureQueryXML ファイルを構成し、バインド操作を実行します。 また、IBM Data Studio を使用して pureQuery クライアント最適化プロセスを管理することもできます。

前の図では、SQL 情報が pureQueryXML ファイルに取り込まれました。 データベースに作成されるリポジトリーの中に、取り込み済み SQL 情報を保管するよう、pureQuery Runtime をセットアップすることができます。 また、pureQuery Runtime は、リポジトリーからランタイム・プロパティーなどのデータを取り出すこともできます。

pureQuery クライアント最適化アプリケーション環境と SQL 管理リポジトリー

データベースに作成されるリポジトリーの中に、取り込み済み SQL 情報を保管するよう、pureQuery Runtime プロパティーを設定することができます。 また、pureQuery Runtime プロパティーおよび pureQuery Runtime で使われる他のファイルのデータをリポジトリーに保管することもできます。

例えば、pureQuery の構成/バインド・プロセスのオプションを指定する構成ファイルを作成できます。 構成/バインド・プロセスの構成ファイルを、pureQueryXML および pureQuery Runtime 構成データと共に、リポジトリー内の pureQuery データに保管することができます。 pureQueryXML データを更新する必要が生じた場合、単一の場所から構成/バインド・プロセスの構成ファイルと共にデータを取り出すことができます。

以下の図は、pureQuery クライアント最適化アプリケーションが有効になっているアプリケーションの標準的な環境を示しています。 この図のリポジトリーには、pureQuery ランタイム・プロパティー情報と、構成済み pureQueryXML ファイル情報 (SQL ステートメントの実行を制御するために pureQuery Runtime で使われる情報) が入っています。 この図では、構成済み pureQueryXML ファイル内の SQL ステートメントに対してバインド操作が実行され、ステートメントが静的に実行されます。

図 2. pureQuery クライアント最適化アプリケーション環境
pureQuery クライアント最適化アプリケーション環境 (pureQuery 情報を更新するオプション・プロセス付き)

リポジトリーの作成および管理には、Java ベースの pureQuery ユーティリティー ManageRepository が使用されます。

リポジトリーの中で、pureQueryXML データ、pureQuery Runtime によって取り込まれる SQL データ、および pureQuery Runtime 構成情報を保管します。 アプリケーションの実行中に、アプリケーション環境を更新することができます。 アプリケーション環境の更新時に、構成およびバインド・タスクが使用されます。

前の図の点線は、pureQuery 情報を更新するためにアプリケーション環境で実行できるオプション・プロセスを示しています。 SQL ステートメントおよび関連する情報を取り込むよう、pureQuery Runtime をセットアップすることができます。 pureQuery Runtime は、アプリケーション環境で、あるいは開発サイクルまたはテスト・サイクルで以前に取り込まれていなかったステートメントを取り込みます。

アプリケーション環境を更新するには、取り込み済み SQL 情報と pureQueryXML データを複数のファイルの中にダウンロードし、Merge ユーティリティーを使用してリポジトリーからそれらのファイルを 1 つのファイルにマージします。 次に、更新済みファイルを構成し、ファイル内のステートメントに対してバインド操作を実行し、更新された pureQueryXML ファイル・データ (および必要に応じて) その他のファイルをリポジトリーにアップロードします。 Data Studio はリポジトリーの管理に役立ち、pureQuery クライアント最適化アプリケーション環境の更新を支援します。


フィードバック