メモリー・セットの概要
Db2® メモリー・マネージャーは、オペレーティング・システムからのメモリー割り振りを メモリー・セットにグループ化します。
特定のメモリー・セット内のメモリーは、共通属性を共有します。その属性には、メモリーを使用する一般的な目的、予想される揮発性、メモリーの増加時の制約などが含まれます。 例えば、バッファー・プールはデータベース・メモリー・セットから割り振られ、データベースがアクティブである限り割り振られます。 ステートメント・ヒープは、アプリケーションからの特定の SQL 準備要求のためにアプリケーション・メモリー・セットから割り振られ、ステートメント・コンパイル操作の間のみ持続します。
各メモリー・セット内で、特定のメモリー域は、一般に特定のメモリー・セットのタイプに関連した目的のために割り当てられます。 例えば、あるタイプのデータベース・レベルの処理では、データベース・メモリー・セットからのメモリーが使用されます。高速コミュニケーション・マネージャーで必要なメモリーは FCM メモリー・セットから割り振られます。
表 1 に、さまざまなタイプのメモリー・セットをリストします。
メモリー・セットのタイプ* | 説明 | このセットから割り振られるメモリーの有効範囲 |
---|---|---|
DBMS | データベース・メモリー・マネージャー・セット。 このセット内の大部分のメモリーは、データベースに特定されない通信サービスなどの、基本インフラストラクチャーの目的で使用されます。 このメモリー・セットの構成は不要ですが、このセットのユーザー構成可能メモリーには、モニター・ヒープ・サイズ (mon_heap_sz) と監査バッファー・サイズ (audit_buf_sz) が含まれています。 | インスタンス |
FMP | fenced モード・プロセスのメモリー・セット。 このセットから割り振られるメモリーは、エージェントと fenced モード・プロセスの間の通信に使用されます。 このセットからのメモリー割り振りは、DB2_FMP_COMM_HEAPSZ レジストリー変数と aslheapsz 構成パラメーターを使用して構成できます。 | インスタンス |
PRIVATE | このセットから割り振られるメモリーは、基本インフラストラクチャーや診断サポートなどの一般的な目的で使用されます。 専用ソート・モデルを使用するシステム (sheapthres 構成パラメーターが 0 以外の値に設定されているシステム) を除き、専用メモリー・セットの構成は不要です。 | インスタンス |
データベース | データベース・メモリー・セット。 このセットから割り振られるメモリーは、一般に単一のデータベース固有の処理に使用され、アプリケーション固有の処理には使用されません。 このセットから割り振られるメモリーの例としては、バッファー・プール、データベース・ヒープ、ロック・リスト、ユーティリティー・ヒープ、パッケージ・キャッシュ、カタログ・キャッシュ、および共有ソート・ヒープが含まれます。 このセットは、database_memory データベース構成パラメーターを使用して構成できます。 セルフチューニング・メモリー・マネージャー (STMM) を使用してこのメモリー域をチューニングすることもできます。 | データベース |
APPLICATION | アプリケーション・メモリー・セット。 このセットから割り振られるメモリーは、一般にアプリケーション固有の処理に使用されます。 このセットから割り振られるメモリーには、アプリケーション、統計ヒープ、ステートメント・ヒープ、および構成不要な共有作業域が含まれます。 このセットは、appl_memory データベース構成パラメーターを使用して構成できます。 | データベース |
FCM | 高速コミュニケーション・マネージャーのメモリー・セット。 このセットから割り振られるメモリーは、高速コミュニケーション・マネージャーによって排他的に使用されます。 このセットからのメモリーは、fcm_num_buffers と fcm_num_channels データベース・マネージャー構成パラメーターを使用して構成できます。 | ホスト |
* 最初の列に示されている名前は、memory_set_type モニター・エレメントで返される名前です。 |