リリース情報


|9.4 DB2 レジストリーと環境変数

|9.4.1 パフォーマンス変数への修正


|

|表 5. パフォーマンス変数

変数名 オペレーティング・システム
説明
DB2_BLOCK_BASED_BP Solaris Default=None

値: パラメーターによって異なります

バッファー・プール内にブロック域を作成するために必要な値を指定します。バッファー・プールの ID は必要であり、SYSCAT.BUFFERPOOLS システム・カタログ視点の BUFFERPOOLID 列を調べればわかります。バッファー・プール内でブロック・ベースの入出力に割り振られるページ数を指定する必要があります。ブロックに含まれるページ数はオプションで、デフォルト値は 32 です。

このレジストリー変数の使用のフォーマットは次の通りです。

DB2_BLOCK_BASED_BP=BUFFER POOL ID,BLOCK AREA SIZE,[BLOCK SIZE];...

セミコロンで項目を分離して同じ変数を使用することで、複数のバッファー・プールをブロック・ベースとして定義できます。

BLOCK SIZE の値は、2 〜 256 の範囲を取る可能性があります。BLOCK SIZE を指定しないと、デフォルトの 32 が使用されます。

指定された BLOCK AREA SIZE がバッファー・プール・サイズの合計の 98% より大きい場合は、バッファー・プールはブロック・ベースで作成されません。バッファー・プールのページ・ベースの領域に常にバッファー・プールの一部を持つことをお勧めします。これは、システム上の入出力の大半が順次プリフェッチであっても、個々のページが必要になる可能性があるからです。BLOCK AREA SIZE に指定された値が BLOCK SIZE の倍数でない場合は、最も近いブロック・サイズ境界に削減されます。ブロック・ベースの入出力について詳しくは 9.2.1, ブロック・ベースのバッファー・プール を参照してください。

DB2_NO_FORK_CHECK UNIX デフォルト=OFF

値: ON または OFF

この変数が "ON" の場合、クライアント・プロセスは、アプリケーションが実行プロセスをコピーする (fork する) のを防止しません。fork が行われると、結果は予測できません。結果に影響がない場合もあれば、悪い結果を導いたり、エラー・コードが戻されたり、アプリケーションでトラップが生じたりする可能性もあります。アプリケーションが fork しないと確信しており、パフォーマンスをより向上させたい場合に、この変数を "ON" に変更するようにしてください。

|9.4.2 各種レジストリー変数への修正および追加

| | |

|DB2_NEWLOGPATH2 レジストリー変数は、すべてのオペレーティング・システムで使用できます。新規変数、DB2_ROLLFORWARD_NORETRIEVE |が導入されました。両方の変数に関する正しい情報を以下に示します。
|

|表 6. 各種変数

変数名 オペレーティング・システム
説明
DB2_NEWLOGPATH2 すべて デフォルト=NO

値: YES または NO

このパラメーターを使用すると、重複ロギングを行うために別のパスを使用するかどうかを指定できます。使用されるパスは、"2" を、logpath データベース構成パラメーターの現行値に追加することにより生成されます。
DB2_ROLLFORWARD_NORETRIEVE すべて デフォルト=(設定しない)

値: YES または NO

データベース構成パラメーター USEREXIT が使用可能な場合、ロールフォワード操作中にログ・ファイルが自動的にアーカイブから検索されます。 DB2_ROLLFORWARD_NORETRIEVE 変数を指定すると、ロールフォワード操作でログ・ファイルをアーカイブから検索しません。この変数はデフォルトで使用不可です。ロールフォワードで自動的にログ・ファイルを検索したくない場合は、この変数を YES に設定してください。たとえば、ホット・スタンドバイ・セットアップにおいてこの変数を YES に設定し、不良アプリケーションにより作成されたログ・レコードを保持し、バックアップ・システムを壊してしまわないようにします。

|9.4.3 汎用レジストリー変数の修正および追加

| |

|新規変数、DB2_REDUCED_OPTIMIZATION が導入されました。
|

|表 7. 汎用レジストリー変数

変数名 オペレーティング・システム
説明
DB2_REDUCED_OPTIMIZATION すべて デフォルト=NO

値: YES、NO、または整数

レジストリー変数により、特定の最適化レベルで使用される最適化手法をいくつか使用不可にします。使用する最適化手法の数を減らすと、最適化を行うのに使用する時間とリソースも削減されます。

注:
最適化にかかる時間とリソースの使用が削減されても、最適化とは言えないデータ・アクセス・プランを生み出すリスクは増します。
  • 「NO」に設定した場合

    最適化プログラムは最適化手法を変更しません。

  • 「YES」に設定した場合

    最適化レベルがデフォルトの 5 またはそれ以下の場合、最適化プログラムは、かなりの準備時間とリソースを消費する可能性のある最適化手法をいくつか使用不可にしますが、通常はより優れたアクセス・プランを生成することはありません。

    最適化レベルを正確に 5 にすると、最適化プログラムは、いくつかの追加の手法を削減したり使用不可にしたりし、最適化にかかる時間とリソースの使用をさらに削減しますが、一方、最適化とは言えないデータ・アクセス・プランを生み出すリスクは増します。 5 より低い最適化レベルの場合、これらの手法のいくつかは、効果がなくなる可能性があります。その場合でも、実施されます。

  • 任意の整数に設定した場合

    値を「YES」に設定した場合と影響は同じです。最適化レベル 5 に動的に準備された照会動作に、次に述べる動作が追加されます。照会ブロック内の結合の合計数が設定値を超えると、最適化プログラムは、上記の最適化レベル 5 で説明したように追加の最適化手法を使用不可にする代わりに、貪欲型結合列挙に切り替えます。つまり、照会は、最適化レベル 2 と同様の最適化となります。

    貪欲型結合列挙および動的結合列挙に関する情報については、 管理の手引き: パフォーマンス の「最適結合を選択するための検索方式」を参照してください。

最適化レベル 5 の動的最適化縮小は、管理者の手引き: パフォーマンスの「最適化クラス」に説明があるように、 DB2_REDUCED_OPTIMIZATION が整数に設定された場合の動作と同様に、「YES」に設定され、最適化レベル 5 の場合の動作よりも優先順位が高くなります。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]