MEMORY_POOL テーブル関数

MEMORY_POOL テーブル関数は、すべてのプールに対して 1 行を返します。

返される情報は、システム状況処理 (WRKSYSSTS) コマンドで表示される詳細に似ています。

構文図を読む構文図をスキップする
>>-MEMORY_POOL--(----------------------------------------------->

>--+----------------------------------------------+--)---------><
   '-+------------------------+--reset_statistics-'      
     '-RESET_STATISTICS-- => -'                          

スキーマは QSYS2 です。
reset_statistics
値として YES または NO が入る文字またはグラフィック・ストリング式。

このパラメーターの値が YES の場合、この照会実行の時刻が新しいベースラインとして使用されるように、統計がリセットされます。この統計データが含まれている列の名前には、ELAPSED_ という接頭部が付けられます。この接続内で MEMORY_POOL を今後呼び出すと、新しいベースラインに基づいた統計詳細が返されます。このパラメーターの値が NO の場合、呼び出しのために統計はリセットされません。このパラメーターが指定されていない場合、デフォルトは NO です。

この関数の結果は、以下の表に示された形式の複数行を含むテーブルです。列はすべて NULL 可能です。

表 1. MEMORY_POOL テーブル関数
列名 データ・タイプ 説明
SYSTEM_POOL_ID INTEGER 現在主記憶域が割り振られている各システム記憶域プールのシステム関連プールID。
POOL_NAME VARCHAR(10) この記憶域プールの名前。名前は、番号 (サブシステムに関連した私用プール) または以下の特殊値のいずれかです。
*MACHINE
指定されたプール定義はマシン・プールとして定義されます。
*BASE
指定されたプール定義は,他のサブシステムと共用できる基本システム・プールとして定義されます。
*INTERACT
指定されたプール定義は,QINTER サブシステムで使用される共用プールとして定義されます。
*SPOOL
指定されたプール定義は,スプール書き出しプログラムで使用される共用プールとして定義されます。
*SHRPOOLx
指定されたプール定義は共用プールとして定義されます。
CURRENT_SIZE DECIMAL(20,2) プール中の主記憶域の容量(メガバイト)。
RESERVED_SIZE DECIMAL(10,2) システムの使用(例えば,保管/復元操作など)のために予約されているプール中の記憶域の容量(メガバイト)です。
DEFINED_SIZE DECIMAL(20,2) 共用プール、サブシステム記述、またはシステム値 QMCHPOOL で定義されたプールのサイズ (メガバイト)。定義されたサイズを持たないプールの場合は、NULL 値が入ります。
MAXIMUM_ACTIVE_THREADS INTEGER 任意の時点にプールで活動化できるスレッドの最大数。
CURRENT_THREADS INTEGER プールを現在使用しているスレッドの数。
CURRENT_INELIGIBLE_THREADS INTEGER プールでの不適格スレッドの数。
STATUS VARCHAR(8) プールの状況。
ACTIVE
プールは現在アクティブです。
INACTIVE
プールは現在アクティブではありません。
SUBSYSTEM_LIBRARY_NAME VARCHAR(10) サブシステム名が入っているライブラリー。共用プールの場合には、NULL 値が入ります。
SUBSYSTEM_NAME VARCHAR(10) この記憶域プールと対応するサブシステム。 共用プールの場合には、NULL 値が入ります。
DESCRIPTION VARCHAR(50) 共用プールの説明。 私用プールの場合、または共用プールの説明が存在しない場合は、NULL 値が入ります。
PAGING_OPTION VARCHAR(10) 最適なパフォーマンスのためにシステムが記憶域プールのページング特性を動的に調整するかどうか。
*FIXED
システムは,ページング特性を動的に調整しません。
*CALC
システムはページング特性を動的に調整します。
USRDFN
システムは、記憶域プールのページング特性を動的に調整しませんが、QWCCHGTN API を使用して定義された値を使用します。
ELAPSED_TIME INTEGER 測定開始時刻から経過した時間 (秒)。
ELAPSED_DATABASE_FAULTS DECIMAL(10,1) データベース・アクセス・パスまたはデータのいずれかを含むページ数に対するデータベース・ページ不在数の、ページ不在数/秒による比率。
ELAPSED_NON_DATABASE_FAULTS DECIMAL(10,1) データベース・ページとして指定されたページ以外のページに対する非データベースのページ不在の比率 (1 秒当たりのページ不在数)。
ELAPSED_TOTAL_FAULTS DECIMAL(10,1) データベース不在と非データベース不在の、ページ不在数/秒による比率。
ELAPSED_DATABASE_PAGES DECIMAL(10,1) データベース・ページが記憶域プールに入れられる比率 (1 秒当たりのページ数)。
ELAPSED_NON_DATABASE_PAGES DECIMAL(10,1) 非データベース・ページが記憶域プールに入れられる比率(1秒当たりのページ数)。
ELAPSED_ACTIVE_TO_WAIT DECIMAL(10,1) 活動状態から待機状態へのスレッドの移行回数(1分当たりの移行回数)。
ELAPSED_WAIT_TO_INELIGIBLE DECIMAL(10,1) 待機状態から不適格状態へのスレッドの移行回数(1分当たりの移行回数)。
ELAPSED_ACTIVE_TO_INELIGIBLE DECIMAL(10,1) 活動状態から不適格状態へのスレッドの移行回数(1分当たりの移行回数)。
TUNING_PRIORITY INTEGER 自動パフォーマンス調整を行う際にシステムによって使用される共用記憶域プールの優先順位。 サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_MINIMUM_SIZE DECIMAL(10,2) 共用記憶域プールに割り振る記憶域の最少量(合計主記憶域のパーセント)。サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_MAXIMUM_SIZE DECIMAL(10,2) 共用記憶域プールに割り振る記憶域の最大量(合計主記憶域のパーセント)。サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_MINIMUM_FAULTS DECIMAL(10,2) 共用記憶域プールの指針として使用する1秒当たりの最大ページ不在数。サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_MAXIMUM_FAULTS DECIMAL(10,2) 共用記憶域プールの指針として使用する1秒当たりの最小ページ不在数。サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_THREAD_FAULTS DECIMAL(10,2) 共用記憶域プールの指針として使用する活動スレッドごとの1秒当たりのページ不在数。サブシステム記述に定義されている私用プールの場合には、NULL 値が入ります。
TUNING_MINIMUM_ACTIVITY DECIMAL(10,2) QPFRADJ システム値が 2 または 3 に設定されている場合にパフォーマンス調整によって共用プールの活動レベルに設定できる最小値。サブシステム記述に定義されている私用プールの場合は、NULL 値が入ります。
TUNING_MAXIMUM_ACTIVITY DECIMAL(10,2) QPFRADJ システム値が 2 または 3 に設定されている場合にパフォーマンス調整によって共用プールの活動レベルに設定できる最大値。サブシステム記述に定義されている私用プールの場合は、NULL 値が入ります。

私用と共用、アクティブと非アクティブのすべての使用可能なプール情報を返します。すべての経過値を 0 にリセットするように指定します。
SELECT * FROM TABLE(QSYS2.MEMORY_POOL(RESET_STATISTICS=>'YES')) X;