バッファー・プール・サイズの計算
バッファー・プールとは、1 つ以上の表スペースあるいは索引のバッファー要求を満足させるために 使用される仮想ストレージのことです。 すべての Db2 サブシステムは、中央ストレージまたは補助ストレージによってバッキングされる仮想バッファー・プールを使用します。 バッファー・プールは、2 GB 境界より上に作成されます。
このタスクについて
仮想バッファー・プール : 最善の結果を得るために、それぞれの 同時ユーザーごとに少なくとも 100KB のバッファー・プール・スペースを使用してください。 パフォーマンスを向上させるために、300KB 以上の値を使用することをお勧めします。 少量のデータにアクセスする非常に単純な SQL ステートメントでは、必要量はこれより少なくてすみます。 大量のデータにアクセスする複雑な SQL ステートメントでは、必要量はこれより多くなります。 動的 SQL ステートメントは、 動的バインドを必要とする場合があります。動的バインドには、カタログ・テーブル および索引用に追加のバッファーが必要です。 SQL ステートメントがディレクトリー・アクセス を必要とする場合にも、ディレクトリー・ページ・セット用に追加のバッファーが必要です。 UPDATE、DELETE、および INSERT ステートメントでは、更新されたページをバッファー・プール に保持するために、さらにバッファーが必要です。
プリフェッチを 効率的にサポートするには、同時にアクセスされるオブジェクトごとに 400 KB の余裕を とってください。 例えば、単一の表スペース・スキャンを含む SELECT ステートメント がある場合は、そのステートメント用に 400 KB の余裕を持たせてください。 別の例として、それぞれの表ごとに索引を使用する 3 つの表のソート・マージ結合、および並列度 4 を使用する SELECT ステートメントがあるとします。 大まかな見積を得るには、アクセスされるオブジェクトの総数を計算し、オブジェクトの数を 400 KB 単位で乗算し、次に並列処理の度合いによって乗算します。 この例では、式は (3 つの表 + 3 つの索引 + 1 つのソート用の作業ファイル) x 400 KB x 4 となります。 結果は 11200KB であり、このステートメントに推奨されます。 通常は、 優れたパフォーマンス制御のために、これらのオブジェクトは、個別のバッファー・プール に定義する必要があります。 この例では、索引のために 1 つ、表のために 1 つ、 および作業ファイルのために 1 つの、少なくとも 3 つの個別バッファー・プールが 必要です。
インストール時に、インストール・パネルでバッファー・プール・サイズを設定できます。 後で ALTER BUFFERPOOL コマンドを使用して、4 KB ページ・セット用に 50 個のバッファー・プール、8 KB ページ・セット用の 10 個のバッファー・プール、16 KB ページ・セット用の 10 個のバッファー・プール、および 32 KB 表スペース用の 10 個のバッファー・プールのサイズおよびその他の属性を変更できます。 ALTER BUFFERPOOL コマンドを使用すると、Db2の実行中に動的に変更を行うことができます。
| ページ・サイズ | ページ数 |
|---|---|
| 4 KB | 2000 |
| 8 KB | 1000 |
| 16 KB | 500 |
| 32 KB | 250 |
プロシージャー
サブシステムの仮想バッファー・プールのサイズを計算するには、次のようにします。
| 仮想バッファー・プールの計算 | デフォルト | ||
|---|---|---|---|
| BP0 のバッファー | ____ x 4 KB = _____ | 20,000 x 4 KB | = 80,000 KB |
| BP1 のバッファー | +____ x 4 KB = _____ | + 0 x 4 KB | = 0 KB |
| BP2 のバッファー | +____ x 4 KB = _____ | + 0 x 4 KB | = 0 KB |
| . | |||
| . | |||
| . | |||
| BP49 のバッファー | +____ x 4 KB = _____ | + 0 x 4 KB | = 0 KB |
| BP8K0 のバッファー | +____ x 8 KB = _____ | + 1000 x 8 KB | = 8000 KB |
| BP8K1 のバッファー | +____ x 8 KB = _____ | + 0 x 8 KB | = 0 KB |
| . | |||
| . | |||
| BP16K0 のバッファー | +___ x 16 KB = ____ | + 500 x 16 KB | = 8000 KB |
| BP16K1 のバッファー | +___ x 16 KB = ____ | + 0 x 16 KB | = 0 KB |
| . | |||
| . | |||
| BP32K のバッファー | +___ x 32 KB = ____ | +250 x 32 KB | = 8000 KB |
| . | |||
| . | |||
| BP32K9 のバッファー | +___ x 32 KB = ____ | + 0 x 32 KB | = 0 KB |
| = ____ | = 104,000KB | ||