固定バッファー・プールしきい値
一部のバッファー・プールしきい値は、変更不可です。 バッファー・プールの使用状況をモニターして、固定しきい値に達する頻度を調べることができます。
固定しきい値に頻繁に達する場合は、ALTER BUFFERPOOL コマンドを使用してバッファー・プールのサイズを拡張することが解決策です。 バッファー・プールのサイズを増やすと、バッファーに使用できる実ストレージの合計量は、他のバッファー・プールに影響を与えることがあります。
固定しきい値は、可変しきい値よりもパフォーマンスにとっては重要です。 一般に、固定しきい値のいずれにも達しないように (時に達することはあっても) 十分に大きなバッファー・プール・サイズを設定することが最善です。
各固定しきい値は、使用不可ページがバッファー・プール内で占有できるパーセンテージで示されます。 Db2は、最高値から最低値まで、以下の固定バッファー・プールしきい値を使用します。
- 即時書き込みしきい値: 97.5%
即時書き込みしきい値 は、ページが更新されるたびに検査されます。 このしきい値を超えると、更新されたページは、更新が完了するとただちにディスクに書き込まれます。 書き込みは SQL 要求と同期して行われます。つまり、書き込みが完了するまで要求は待機します。 この 2 つの操作が並行して行われることはありません。
このしきい値に達すると、プロセッサーの使用と入出力リソースの消費にかなりの影響を及ぼします。 例えば、10 ページの順次ページの各ページごとに 3 行を更新する場合、通常は書き込み操作は 1 回または 2 回です。 一方、即時書き込みしきい値を超えた場合、その更新には 30 回の同期書き込みが必要になります。
Db2 は、即時書き込み閾値を超えていない場合でも、同期書き込みを使用することがあります。 例えば、ページが書き込まれる前に2つ以上のチェックポイントを通過する場合、 Db2 は同期書き込みを使用します。 このような状態は、たとえ発生することがあってもバッファーの不足を意味していません。
- データ管理しきい値: 95%
データ管理しきい値 は、ページの読み取りまたは更新の前に検査されます。 しきい値を超えない場合、 Db2 はページ内に取得または更新された行の数が何行であろうと、バッファ・プール内の各ページに1回のみアクセスします。 しきい値を超えると、 Db2 は、そのページで取得または更新される各行ごとに、バッファプール内のページに1回アクセスします。
推奨: データ管理のしきい値に達しないようにしてください。プロセッサの使用に大きな影響を与えるためです。データ管理しきい値は、個々のバッファー・プールごとに維持されます。 あるバッファープールでデータ管理のしきい値に達すると、 Db2 は他のバッファープールからページを解放しなくなります。
- プリフェッチしきい値: 90%
プリフェッチしきい値 は、以下に示す異なる 2 つの時点で検査されます。
- プリフェッチ操作をスケジュールする前。 プリフェッチしきい値を超えていると、プリフェッチはスケジュールされません。
- 既にスケジュールされているプリフェッチ操作のためにバッファーを割り振る時。プリフェッチしきい値を超えている場合、プリフェッチは取り消されます。
プリフェッチしきい値に達すると、より多くのバッファーが使用可能になるまでプリフェッチが禁止されます。 頻繁に大量のスキャンを使用する操作のような、プリフェッチを使用する操作は悪影響を受けます。