クライアント最適化対応のアプリケーションの保守に関する推奨

pureQuery クライアント最適化対応のアプリケーションを、新規にキャプチャーした pureQuery データで定期的に更新します。 SQL ステートメントを静的に実行している場合、新規にキャプチャーした SQL ステートメントのパッケージをバインドする必要があります。

pureQuery クライアント最適化対応のアプリケーションの更新、および新規にキャプチャーした pureQuery ステートメントのバインディングに関する推奨内容は以下のとおりです。

データベース内のパッケージ数の制限
pureQuery クライアント最適化を使用して、アプリケーションの静的実行を使用可能に設定する場合、データベース内に新しいパッケージを定期的に作成します。新しいパッケージによって古いパッケージが置き換えられることもありますが、しばしば、新しいパッケージが他のパッケージと置き換わらずに追加される場合があります。 パッケージのバージョン管理を使用している場合は、新しいパッケージが他のパッケージに追加されることは一般的です。データベースに作成したパッケージを追跡して、古いパッケージを定期的に削除し、DB2 データベースに多数のパッケージが含まれないようにします。
パッケージのバージョン管理の使用
パッケージのバージョン管理を使用して、前のバージョンのパッケージを置き換えずに、新しいバージョンのパッケージを作成できます。パッケージのバージョン管理を使用すると、新しいバージョンのパッケージに問題が発見された場合に、前のバージョンのパッケージにフォールバックできます。

リポジトリーの入力 pureQueryXML を提供しており、アプリケーションを停止せずに新しい pureQueryXML でリポジトリーを更新する場合に、パッケージのバージョン管理は特に役立ちます。静的 SQL の使用時に、アプリケーションを停止せずにリポジトリーを更新する場合、新しい pureQueryXML をリポジトリーにアップロードする前に、新しい pureQueryXML によって記述されているパッケージをバインドする必要があります。新しい pureQueryXML には、既にデータベースにバインドされているパッケージと同じ名前のパッケージが含まれている可能性があります。パッケージ名が同じ場合、pureQuery Runtime によってデータベースのパッケージの使用が試行されているときに、それらが置き換えられると、問題が発生します。パッケージのバージョン管理を使用した場合、既存のパッケージは置き換えられずに、新しいパッケージが追加されます。リポジトリーの新しい pureQueryXML を含む実行時グループ・バージョンをアクティブ化すると、pureQuery Runtime で新しいパッケージを使用できます。

SQL を静的に実行して、パッケージ・バージョンを使用する場合、データベースにパッケージを作成するために使用した pureQueryXML ファイルを保存する処理を作成します。特定のデータベース・パッケージ・バージョンを使用して SQL を静的に実行するには、そのパッケージ・バージョンを作成するために使用した pureQueryXML をアプリケーションで使用する必要があります。また、作成したパッケージを追跡して、データベースから古いパッケージを定期的に削除してください。

古い SQL ステートメントの pureQueryXML ファイルからの削除

新しい SQL ステートメントまたは更新された SQL ステートメントのみをキャプチャーする場合は、Configure ユーティリティーで -removeSQLInactiveForDays オプションを使用して、非アクティブな SQL ステートメントを削除します。pureQueryXML ファイルの SQL ステートメントからパッケージを作成する場合、セクション数のずれを避けるために、Configure ユーティリティーで -cleanConfigure オプションを使用します。

アプリケーションが大幅に変更される場合は、更新された SQL ステートメントまたは新しい SQL ステートメントのみをキャプチャーするのではなく、アプリケーションによって使用される SQL ステートメントすべてのキャプチャーを実行します。新しい SQL ステートメントまたは更新された SQL ステートメントのみをキャプチャーすると、アプリケーションで使用されなくなった SQL ステートメントが pureQueryXML ファイルに含まれている可能性があります。

注: -cleanConfigure オプションの値を TRUE に設定して使用すると、Configure ユーティリティーでは整合性トークン情報を含めたステートメント・セット情報は保存されません。

フィードバック