ヘッダーをスキップ
Oracle® Database PL/SQLパッケージおよびタイプ・リファレンス
11g リリース2(11.2)
B56262-06
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

120 DBMS_RESOURCE_MANAGER

DBMS_RESOURCE_MANAGERパッケージは、計画、コンシューマ・グループおよびプラン・ディレクティブをメンテナンスします。また、プラン・スキーマへの変更をグループ化するセマンティクスも提供します。


関連項目:

データベース・リソース・マネージャの使用方法の詳細は、『Oracle Database管理者ガイド』を参照してください。

この章では、次の項目について説明します。


DBMS_RESOURCE_MANAGERの使用方法


推奨されないサブプログラム


注意:

新しいアプリケーションでは、推奨されないプロシージャは使用しないことをお薦めします。推奨されない機能は、下位互換性を維持する目的のみでサポートされています。

Oracle Database 11gでは、次のサブプログラムの使用は推奨されていません。


セキュリティ・モデル

実行者には、このプロシージャを実行するためのADMINISTER_RESOURCE_MANAGERシステム権限が必要です。この権限の付与および取消しを行うプロシージャは、DBMS_RESOURCE_MANAGER_PRIVSパッケージに含まれています(第121章「DBMS_RESOURCE_MANAGER_PRIVS」を参照)。


定数

表120-1 DBMS_RESOURCE_MANAGERの定数

定数 タイプ 説明

CLIENT_MACHINE

VARCHAR2(30)

CLIENT_MACHINE

クライアントが接続元にするコンピュータの名前。

CLIENT_OS_USER

VARCHAR2(30)

CLIENT_OS_USER

ログインしたクライアントのオペレーティング・システムのユーザー名。

CLIENT_PROGRAM

VARCHAR2(30)

CLIENT_PROGRAM

サーバーにログインするために使用したクライアント・プログラムの名前。

MODULE_NAME

VARCHAR2(30)

MODULE_NAME

DBMS_APPLICATION_INFOパッケージのSET_MODULEプロシージャまたは同等のOCI属性設定で設定された現在実行しているアプリケーションのモジュール名。

MODULE_NAME_ACTION

VARCHAR2(30)

MODULE_NAME_ACTION

現在のモジュールとDBMS_APPLICATION_INFOパッケージの次のプロシージャまたは同等のOCI属性設定で設定された現在実行しているアクションの組合せ。

属性は、モジュール名、その後に続くピリオド(.)、その後に続くアクション名(module_name.action_name)で指定されます。

ORACLE_FUNCTION

VARCHAR2(30)

ORACLE_FUNCTION

セッションが現在実行中のファンクション。有効なファンクションは、BACKUPCOPYおよびDATALOADです。BACKUPは、RMANを使用して、バックアップ操作を実行しているセッションに設定されます。COPYは、RMANを使用して、イメージ・コピーを実行しているセッションに設定されます。DATALOADは、データ・ポンプを使用して、データをロードしているセッションに設定されます。

ORACLE_USER

VARCHAR2(30)

ORACLE_USER

Oracle Databaseのユーザー名。

SERVICE_MODULE

VARCHAR2(30)

SERVICE_MODULE

service_name.module_nameの形式のサービス名とモジュール名の組合せ。

SERVICE_MODULE_ACTION

VARCHAR2(30)

SERVICE_MODULE_ACTION

service_name.module_name.action_nameの形式のサービス名、モジュール名およびアクション名の組合せ。

SERVICE_NAME

VARCHAR2(30)

SERVICE_NAME

クライアントが接続の確立に使用するサービス名。

PERFORMANCE_CLASS

VARCHAR2(30)

PERFORMANCE_CLASS

Oracle Databaseのユーザー名。



DBMS_RESOURCE_MANAGERサブプログラムの要約

表120-2 DBMS_RESOURCE_MANAGERパッケージのサブプログラム

サブプログラム 説明

BEGIN_SQL_BLOCKプロシージャ


リソース・マネージャによってグループとして扱われる必要のあるSQL文のブロックの開始を示します。

CALIBRATE_IOプロシージャ


ストレージのI/O機能を較正します。

CLEAR_PENDING_AREAプロシージャ


リソース・マネージャに対する作業領域を消去します。

CREATE_CATEGORYプロシージャ


新規リソース・コンシューマ・グループ・カテゴリを作成します。

CREATE_CONSUMER_GROUPプロシージャ


リソース・コンシューマ・グループを定義するエントリを作成します。

CREATE_PENDING_AREAプロシージャ


リソース・マネージャ・オブジェクトへの変更を行うための作業領域を作成します。

CREATE_PLANプロシージャ


リソース・プランを定義するエントリを作成します。

CREATE_PLAN_DIRECTIVEプロシージャ


リソース・プラン・ディレクティブを作成します。

CREATE_SIMPLE_PLANプロシージャ


最大8つのコンシューマ・グループが含まれた単一レベルのリソース・プランを1ステップで作成します。

DELETE_CATEGORYプロシージャ


既存のリソース・コンシューマ・グループ・カテゴリを削除します。

DELETE_CONSUMER_GROUPプロシージャ


リソース・コンシューマ・グループを定義するエントリを削除します。

DELETE_PLANプロシージャ


指定の計画およびそれが参照するすべてのプラン・ディレクティブを削除します。

DELETE_PLAN_CASCADEプロシージャ


指定の計画およびそのすべての子(プラン・ディレクティブ、サブプラン、コンシューマ・グループ)を削除します。

DELETE_PLAN_DIRECTIVEプロシージャ


リソース・プラン・ディレクティブを削除します。

END_SQL_BLOCKプロシージャ


リソース・マネージャによってグループとして扱われる必要のあるSQL文のブロックの終了を示します。

SET_CONSUMER_GROUP_MAPPINGプロシージャ


ログイン属性およびランタイム属性のマッピングに使用するエントリを追加、削除または変更します。

SET_CONSUMER_GROUP_MAPPING_PRIプロシージャ


セッション属性マッピングの優先順位リストを作成します。

SET_INITIAL_CONSUMER_GROUPプロシージャ


ユーザーに対して、初期リソース・コンシューマ・グループを割り当てます。(注意: 推奨されないサブプログラム)

SUBMIT_PENDING_AREAプロシージャ


リソース・マネージャに対する保留中の変更を実行します。

SWITCH_CONSUMER_GROUP_FOR_SESSプロシージャ


指定のセッションのリソース・コンシューマ・グループを変更します。

SWITCH_CONSUMER_GROUP_FOR_USERプロシージャ


指定のユーザー名で、すべてのセッションのリソース・コンシューマ・グループを変更します。

SWITCH_PLANプロシージャ


現行のリソース・マネージャ・プランを設定します。

UPDATE_CATEGORYプロシージャ


既存のリソース・コンシューマ・グループ・カテゴリを更新します。

UPDATE_CONSUMER_GROUPプロシージャ


リソース・コンシューマ・グループを定義するエントリを更新します。

UPDATE_PLANプロシージャ


リソース・プランを定義するエントリを更新します。

UPDATE_PLAN_DIRECTIVEプロシージャ


リソース・プラン・ディレクティブを更新します。

VALIDATE_PENDING_AREAプロシージャ


リソース・マネージャに対する保留中の変更を検証します。



BEGIN_SQL_BLOCKプロシージャ

このプロシージャは、パラレル・ステートメント・キューイングで使用され、リソース・マネージャによってグループとして扱われる必要のあるSQL文のブロックの開始を示します。


注意:

この機能は、Oracle Database 11gリリース2(11.2.0.2)以上で使用できます。

構文

DBMS_RESOURCE_MANAGER.BEGIN_SQL_BLOCK;

使用上の注意

詳細は、『Oracle Database VLDBおよびパーティショニング・ガイド』のパラレル・ステートメント・キューイングに関する項およびリソース・マネージャによるパラレル・ステートメント・キューイングの管理に関する項を参照してください。


CALIBRATE_IOプロシージャ

このプロシージャは、ストレージのI/O機能を較正します。較正ステータスはV$IO_CALIBRATION_STATUSビューから利用可能であり、較正が正常に実行された場合、結果はDBA_RSRC_IO_CALIBRATE表に配置されます。

構文

DBMS_RESOURCE_MANAGER.CALIBRATE_IO (
   num_physical_disks      IN  PLS_INTEGER DEFAULT 1,
   max_latency             IN  PLS_INTEGER DEFAULT 20,
   max_iops                OUT PLS_INTEGER,
   max_mbps                OUT PLS_INTEGER,
   actual_latency          OUT PLS_INTEGER); 

パラメータ

表120-3 CALIBRATE_IOプロシージャのパラメータ

パラメータ 説明

num_physical_disks

データベース記憶域にある物理ディスクの概数。

max_latency

データベース・ブロック・サイズのIOリクエストの最大許容待機時間(ミリ秒)。

max_iops

維持できるI/Oリクエストの最大数(秒)。I/Oリクエストは、ランダムに分散されるデータベース・ブロック・サイズの読取りです。

max_mbps

維持できるI/Oスループットの最大数(MB/秒単位)。I/Oリクエストは、ランダムに分散される1MBの読取りです。

actual_latency

max_iops値でのデータベース・ブロック・サイズのI/Oリクエストの平均待機時間(ミリ秒)。


使用上の注意

  • このプロシージャは、SYSDBA権限を持つユーザーのみが実行できます。また、権限を持つユーザーは、timed_statisticsをオンにし、asynch_ioがデータファイルに対して有効になっていることを確認する必要もあります。この設定は、filesystemio_optionsASYNCHまたはSETALLのいずれかに設定することによって行うことができます。また、次のSQL文を使用して、asynch_ioステータスを問い合せることもできます。

    col name format a50
    SELECT name, asynch_io FROM v$datafile f,v$iostat_file i
      WHERE f.file#        = i.file_no
      AND   filetype_name  = 'Data File'
     /
    
  • 一度に実行できる較正は1つのみです。別の較正を同時に開始すると失敗します。

  • Oracle Real Application Clusters(Oracle RAC)データベースでは、ワークロードはすべてのインスタンスから同時に生成されます。


関連項目:

較正の詳細は、『Oracle Databaseパフォーマンス・チューニング・ガイド』を参照してください。

I/O較正プロシージャの使用例

SET SERVEROUTPUT ON
DECLARE
  lat  INTEGER;
  iops INTEGER;
  mbps INTEGER;
BEGIN
-- DBMS_RESOURCE_MANAGER.CALIBRATE_IO (<DISKS>, <MAX_LATENCY>, iops, mbps, lat);
   DBMS_RESOURCE_MANAGER.CALIBRATE_IO (2, 10, iops, mbps, lat);
 
  DBMS_OUTPUT.PUT_LINE ('max_iops = ' || iops);
  DBMS_OUTPUT.PUT_LINE ('latency  = ' || lat);
  DBMS_OUTPUT.PUT_LINE ('max_mbps = ' || mbps);
end;
/

I/O較正結果の表示

SQL> desc V$IO_CALIBRATION_STATUS
  Name                                      Null?    Type
  ----------------------------------------- -------- ----------------------------
  STATUS                                             VARCHAR2(13)
  CALIBRATION_TIME                                   TIMESTAMP(3)
 
SQL> desc gv$io_calibration_status
  Name                                      Null?    Type
  ----------------------------------------- -------- ----------------------------
  INST_ID                                            NUMBER
  STATUS                                             VARCHAR2(13)
  CALIBRATION_TIME                                   TIMESTAMP(3)
 
Column explanation:
-------------------
STATUS:
  IN PROGRESS   : Calibration in Progress (Results from previous calibration
                  run displayed, if available)
  READY         : Results ready and available from earlier run
  NOT AVAILABLE : Calibration results not available.
 
CALIBRATION_TIME: End time of the last calibration run

I/O較正結果を格納するDBA表

SQL> desc DBA_RSRC_IO_CALIBRATE
  Name                                      Null?    Type
  ----------------------------------------- -------- ----------------------------
  START_TIME                                         TIMESTAMP(6)
  END_TIME                                           TIMESTAMP(6)
  MAX_IOPS                                           NUMBER
  MAX_MBPS                                           NUMBER
  MAX_PMBPS                                          NUMBER
  LATENCY                                            NUMBER
  NUM_PHYSICAL_DISKS                                 NUMBER
 
comment on table DBA_RSRC_IO_CALIBRATE is
'Results of the most recent I/O calibration'
/
comment on column DBA_RSRC_IO_CALIBRATE.START_TIME is
'start time of the most recent I/O calibration'
/
comment on column DBA_RSRC_IO_CALIBRATE.END_TIME is
'end time of the most recent I/O calibration'
/
comment on column DBA_RSRC_IO_CALIBRATE.MAX_IOPS is
'maximum number of data-block read requests that can be sustained per second'
/
comment on column DBA_RSRC_IO_CALIBRATE.MAX_MBPS is
'maximum megabytes per second of maximum-sized read requests that can be
sustained'
/
comment on column DBA_RSRC_IO_CALIBRATE.MAX_PMBPS is
'maximum megabytes per second of large I/O requests that
can be sustained by a single process'
/
comment on column DBA_RSRC_IO_CALIBRATE.LATENCY is
'latency for data-block read requests'
/
comment on column DBA_RSRC_IO_CALIBRATE.NUM_PHYSICAL_DISKS is
'number of physical disks in the storage subsystem (as specified by user)'
/

CLEAR_PENDING_AREAプロシージャ

このプロシージャは、リソース・マネージャに対する保留中の変更内容を消去します。

構文

DBMS_RESOURCE_MANAGER.CLEAR_PENDING_AREA;

CREATE_CATEGORYプロシージャ

このプロシージャは、新しいコンシューマ・グループ・カテゴリを作成します。この属性の主な目的は、Exadata I/Oリソース・マネージャ・カテゴリ・プランをサポートすることです。ビューDBA_RSRC_CATEGORIESは、現在定義されているカテゴリを定義します。ADMINISTRATIVEINTERACTIVEBATCHMAINTENANCEおよびOTHERの各カテゴリを利用できます。

構文

DBMS_RESOURCE_MANAGER.CREATE_CATEGORY (
   category    IN    VARCHAR2,
   comment     IN    VARCHAR2);

パラメータ

表120-4 CREATE_CATEGORYプロシージャのパラメータ

パラメータ 説明

category

コンシューマ・グループ・カテゴリの名前。

comment

ユーザーのコメント。



CREATE_CONSUMER_GROUPプロシージャ

このプロシージャは、リソース・コンシューマ・グループを定義するエントリを作成します。

構文

DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP (
   consumer_group  IN VARCHAR2,
   comment         IN VARCHAR2, 
   cpu_mth         IN VARCHAR2 DEFAULT NULL,
   mgmt_mth        IN VARCHAR2 DEFAULT 'ROUND-ROBIN',
   category        IN VARCHAR2 DEFAULT 'OTHER'); 

パラメータ

表120-5 CREATE_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

consumer_group

コンシューマ・グループの名前。

comment

ユーザーのコメント。

cpu_mth

CPUリソース割当て方法の名前(非推奨)。

mgmt_mth

CPUリソース割当て方法の名前。

category

コンシューマ・グループのカテゴリを説明します。この属性の主な目的は、Exadata I/Oリソース・マネージャ・カテゴリ・プランをサポートすることです。ビューDBA_RSRC_CATEGORIESは、現在定義されているカテゴリを定義します。カテゴリは、CREATE_CATEGORYプロシージャUPDATE_CATEGORYプロシージャおよびDELETE_CATEGORYプロシージャを使用して、変更できます。



CREATE_PENDING_AREAプロシージャ

このプロシージャは、リソース・マネージャ・オブジェクトに変更を加えます。

プラン・スキーマへのすべての変更は、ペンディング・エリア内で行う必要があります。ペンディング・エリアは、プラン・スキーマを変更するためのスクラッチ領域とみなすことができます。管理者は、このペンディング・エリアを作成し、必要に応じて変更を加え、場合によってその変更を検証し、その実行が完了したときのみ、その変更内容がアクティブになります。

構文

DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA;

使用上の注意

ペンディング・エリアがアクティブな間は、変更された現行のプラン・スキーマを適切なユーザー・ビューから選択して、いつでも表示できます。

現行の変更を中止する場合は、いつでもペンディング・エリアを消去できます。また、VALIDATEプロシージャをコールして、変更が有効になっているかどうかを確認できます。変更は、エントリ・グループの一貫性を維持するための指定の順序で実行する必要はありません。これらのチェックは、ペンディング・エリアが実行されるときにも暗黙的に行われます。


注意:

Oracleでは、孤立したコンシューマ・グループ(つまり、そのコンシューマ・グループを参照するプラン・ディレクティブがないコンシューマ・グループ)が可能です。これは、現在は使用しないが将来使用するコンシューマ・グループを管理者があらかじめ作成できるようにするためです。

次のルールを厳守してください。これらのルールは、VALIDATEまたはSUBMITプロシージャが実行されるたびにチェックされます。

  • プラン・スキーマにループがないこと。

  • プラン・ディレクティブが参照するすべての計画およびコンシューマ・グループがあること。

  • すべての計画に、計画またはコンシューマ・グループのいずれかを参照するプラン・ディレクティブがあること。

  • リソース割当て方法がEMPHASISの場合は、指定レベルでのパーセントの合計が100を超えないこと。

  • アクティブなインスタンスでトップレベルの計画として現在使用されている計画を削除しないこと。

  • プラン・ディレクティブのパラメータparallel_degree_limit_p1は、コンシューマ・グループ(つまり、サブプランではなく)を参照するプラン・ディレクティブでのみ表示されます。

  • 指定の計画でのプラン・ディレクティブが28を超えないこと(つまり、計画は29以上の子を持つことはできません)。

  • アクティブなプラン・スキーマ内のコンシューマ・グループが28を超えないこと。

  • 計画とコンシューマ・グループは同じネームスペースを使用するため、コンシューマ・グループと同じ名前の計画がないこと。

  • アクティブなプラン・スキーマ内にOTHER_GROUPSに対するプラン・ディレクティブがあること。これにより、現在アクティブな計画がカバーしていないセッションにOTHER_GROUPSディレクティブが指定したリソースが割り当てられます。

VALIDATEまたはSUBMITプロシージャによるチェック時に、前述のルールのいずれかに違反していると、それを通知するエラー・メッセージが戻されます。変更して1つ以上の問題を修正し、VALIDATEまたはSUBMITプロシージャを再発行できます。


CREATE_PLANプロシージャ

このプロシージャは、リソース・プランを定義するエントリを作成します。

構文

DBMS_RESOURCE_MANAGER.CREATE_PLAN (
   plan                       IN   VARCHAR2, 
   comment                    IN   VARCHAR2, 
   cpu_mth                    IN   VARCHAR2 DEFAULT NULL, -- deprecated
   active_sess_pool_mth       IN   VARCHAR2 DEFAULT 'ACTIVE_SESS_POOL_ABSOLUTE', 
   parallel_degree_limit_mth  IN   VARCHAR2 DEFAULT 
                                      'PARALLEL_DEGREE_LIMIT_ABSOLUTE',
   queueing_mth               IN   VARCHAR2 DEFAULT 'FIFO_TIMEOUT',
   mgmt_mth                   IN   VARCHAR2 DEFAULT 'EMPHASIS',
   sub_plan                   IN   BOOLEAN DEFAULT FALSE,
   max_iops                   IN   NUMBER DEFAULT NULL,
   max_mbps                   IN   NUMBER DEFAULT NULL);

パラメータ

表120-6 CREATE_PLANプロシージャのパラメータ

パラメータ 説明

plan

リソース・プランの名前。

comment

ユーザーのコメント。

cpu_mth

CPUリソース割当て方法(非推奨)。

active_sess_pool_mth

アクティブ・セッション・プールのリソース割当て方法。アクティブなセッションの数を制限します。他のセッションはすべて非アクティブになり、アクティブ化されるまでキューで待機します。デフォルトのACTIVE_SESS_POOL_ABSOLUTEは、選択できる唯一の方法です。

parallel_degree_limit_mth

任意の操作の並列度に制限を指定するためのリソース割当て方法。デフォルトのPARALLEL_DEGREE_LIMIT_ABSOLUTEは、選択できる唯一の方法です。

queueing_mth

キューイングのリソース割当て方法。キュー内で実行待ちになっている非アクティブなセッションを実行する順序を制御します。デフォルトのFIFO_TIMEOUTは、選択できる唯一の方法です。

mgmt_mth

コンシューマ・グループやサブ・プランがそれぞれ使用するリソース量(CPUやI/Oなど)を指定するためのリソース割当て方法。

  • EMPHASIS: コンシューマ・グループ間でのI/Oリソースの分散方法を指定する際にパーセントを使用する、マルチレベル・プランに向いています。

  • RATIO: I/Oリソースの分散方法を指定する際に比率を使用する、単一レベルの計画に向いています。

sub_plan

TRUEの場合、この計画はサブプランとしての使用のみを目的としていることを示します。サブプランは、OTHER_GROUPSディレクティブを持つ必要はありません。デフォルトはFALSEです。

max_iops

機能しません

max_mbps

機能しません


使用上の注意

デフォルトのリソース割当て方法を使用する場合は、計画の作成または更新時に方法を指定する必要はありません。


CREATE_PLAN_DIRECTIVEプロシージャ

このプロシージャは、リソース・プラン・ディレクティブを作成します。


注意:

parallel_target_percentageパラメータおよびparallel_queue_timeoutパラメータに関連する機能は、Oracle Database 11gリリース2(11.2.0.2)以上で使用できます。

構文

DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE (
   plan                      IN VARCHAR2, 
   group_or_subplan          IN VARCHAR2, 
   comment                   IN VARCHAR2, 
   cpu_p1                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p2                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p3                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p4                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p5                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p6                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p7                    IN NUMBER   DEFAULT NULL, -- deprecated
   cpu_p8                    IN NUMBER   DEFAULT NULL, -- deprecated
   active_sess_pool_p1       IN NUMBER   DEFAULT NULL,
   queueing_p1               IN NUMBER   DEFAULT NULL,
   parallel_degree_limit_p1  IN NUMBER   DEFAULT NULL,
   switch_group              IN VARCHAR2 DEFAULT NULL,
   switch_time               IN NUMBER   DEFAULT NULL,
   switch_estimate           IN BOOLEAN  DEFAULT FALSE,
   max_est_exec_time         IN NUMBER   DEFAULT NULL,
   undo_pool                 IN NUMBER   DEFAULT NULL,
   max_idle_time                IN NUMBER   DEFAULT NULL,
   max_idle_blocker_time        IN NUMBER   DEFAULT NULL,
   switch_time_in_call          IN NUMBER   DEFAULT NULL, -- deprecated
   mgmt_p1                      IN NUMBER   DEFAULT NULL,
   mgmt_p2                      IN NUMBER   DEFAULT NULL,
   mgmt_p3                      IN NUMBER   DEFAULT NULL,
   mgmt_p4                      IN NUMBER   DEFAULT NULL,
   mgmt_p5                      IN NUMBER   DEFAULT NULL,
   mgmt_p6                      IN NUMBER   DEFAULT NULL,
   mgmt_p7                      IN NUMBER   DEFAULT NULL,
   mgmt_p8                      IN NUMBER   DEFAULT NULL,
   switch_io_megabytes          IN NUMBER   DEFAULT NULL,
   switch_io_reqs               IN NUMBER   DEFAULT NULL,
   switch_for_call              IN BOOLEAN  DEFAULT NULL,
   max_utilization_limit        IN NUMBER   DEFAULT NULL,
   parallel_target_percentage   IN NUMBER   DEFAULT NULL, 
   parallel_queue_timeout       IN NUMBER   DEFAULT NULL); 

パラメータ

表120-7 CREATE_PLAN_DIRECTIVEプロシージャのパラメータ

パラメータ 説明

plan

リソース・プランの名前。

group_or_subplan

コンシューマ・グループの名前またはサブプランの名前。

comment

プラン・ディレクティブについてのコメント。

cpu_p1

--非推奨: かわりにmgmt_p1を使用。

cpu_p2

--非推奨: かわりにmgmt_p2を使用。

cpu_p3

--非推奨: かわりにmgmt_p3を使用。

cpu_p4

--非推奨: かわりにmgmt_p4を使用。

cpu_p5

--非推奨: かわりにmgmt_p5を使用。

cpu_p6

--非推奨: かわりにmgmt_p6を使用。

cpu_p7

--非推奨: かわりにmgmt_p7を使用。

cpu_p8

--非推奨: かわりにmgmt_p8を使用。

active_sess_pool_p1

コンシューマ・グループに対するアクティブな同時セッションの最大数を指定します。デフォルトのNULLは、無制限を意味します。

queueing_p1

非アクティブ・セッション・キューにあるジョブ(実行待ち状態のジョブ)がタイムアウトする時間(秒)を指定します。デフォルトのNULLは、無制限を意味します。

parallel_degree_limit_p1

任意の操作の並列度を制限します。デフォルトのNULLは、無制限を意味します。

switch_group

切替え条件に達した場合に、切り替えるコンシューマ・グループを指定します。グループ名が'CANCEL_SQL'の場合は、切替え条件に達したときに現行のコールが取り消されます。グループ名が'KILL_SESSION'の場合は、切替え条件に達したときにセッションが終了します。デフォルトはNULLです。

switch_time

アクションの実行前にセッションを実行できる時間(CPU秒)を指定します。デフォルトのNULLは、無制限を意味します。

switch_estimate

TRUEの場合は、実行前に、見積り実行時間が操作のコンシューマ・グループに自動的に切り換えられるようにOracleに指示します。デフォルトはFALSEです。

max_est_exec_time

セッションに許可する実行時間(CPU秒)の最大値を指定します。操作時間がMAX_EST_EXEC_TIMEより長いとオプティマイザが判断した場合、その操作は開始されず、ORA-07455が発行されます。オプティマイザが判断しない場合は、このディレクティブの効果はありません。デフォルトのNULLは、無制限を意味します。

undo_pool

このコンシューマ・グループによってコミットされないトランザクションに対応するUNDOレコードのサイズをKB単位で制限します。

max_idle_time

セッションのアイドル時間の最大値を示します。デフォルトのNULLは、無制限を意味します。

max_idle_blocker_time

別のセッションのリソース取得をブロックしながら、セッションのアイドル状態を維持できる時間(秒)の最大値。

switch_time_in_call

非推奨。このパラメータを指定すると、switch_timeswitch_time_in_call (秒)に設定され、switch_for_callTRUEに設定されます。switch_timeおよびswitch_for_callを使用することをお薦めします。

mgmt_p1

レベル1のリソース割当て値(cpu_p1のかわり)。

  • EMPHASIS: リソースのパーセントを第1レベルに指定します。

  • RATIO: リソース使用率の重みを指定します。

mgmt_p2

レベル2のリソース割当て値(cpu_p2のかわり)。

  • EMPHASIS: リソースのパーセントを第2レベルに指定します。

  • RATIO: なし

mgmt_p3

レベル3のリソース割当て値(cpu_p3のかわり)。

  • EMPHASIS: リソースのパーセントを第3レベルに指定します。

  • RATIO: なし

mgmt_p4

レベル4のリソース割当て値(cpu_p4のかわり)。

  • EMPHASIS: リソースのパーセントを第4レベルに指定します。

  • RATIO: なし

mgmt_p5

レベル5のリソース割当て値(cpu_p5のかわり)。

  • EMPHASIS: リソースのパーセントを第5レベルに指定します。

  • RATIO: なし

mgmt_p6

レベル6のリソース割当て値(cpu_p6のかわり)。

  • EMPHASIS: リソースのパーセントを第6レベルに指定します。

  • RATIO: なし

mgmt_p7

レベル7のリソース割当て値(cpu_p7のかわり)。

  • EMPHASIS: リソースのパーセントを第7レベルに指定します。

  • RATIO: なし

mgmt_p8

レベル8のリソース割当て値(cpu_p8のかわり)。

  • EMPHASIS: リソースのパーセントを第8レベルに指定します。

  • RATIO: なし

switch_io_megabytes

アクションの実行前にセッションが発行できるI/Oの量(MB)を指定します。デフォルトのNULLは、無制限を意味します。

switch_io_reqs

アクションの実行前にセッションが発行できるI/Oリクエストの数を指定します。デフォルトのNULLは、無制限を意味します。

switch_for_call

switch_timeswitch_io_megabytesまたはswitch_io_reqsパラメータのためにアクションが実行される場合、最初のコールの終了時に、コンシューマ・グループが元のコンシューマ・グループにリストアされるように指定します。デフォルト値のFALSEは、最初のコールの終了時に元のコンシューマ・グループがリストアされないことを意味します。

max_utilization_limit

このコンシューマ・グループまたはサブプランで使用できるCPUの最大使用率を指定します。有効な値は0%から100%です。NULLは無制限を表します(100%に相当)。この属性を指定して、mgmt_p1からmgmt_p8NULLにしておくことができます。

parallel_target_percentage

コンシューマ・グループで使用できるOracle RAC環境におけるパラレル・サーバーの目標数の最大パーセントを指定します。このコンシューマ・グループから起動される追加のパラレル・ステートメントは、すべてキューに入れられます。デフォルトはNULLで、目標数の制限が100%であることを意味します。キューイングの有効な値の範囲は、0から100(%)です。プラン・ディレクティブを更新する場合、値に-1を指定すると、値がNULLにリセットされます。

コンシューマ・グループによってOracle RACデータベース内で実行されているパラレル・ステートメントが存在しない場合、1番目のパラレル・ステートメントはこの制限を超えることができます。

Oracle RAC環境でのパラレル・サーバーの目標数は、すべてのインスタンスにおけるparallel_servers_targetパラメータの合計になります。

parallel_queue_timeout

問合せを、エラー(ORA-07454)によって削除および終了するまでにコンシューマ・グループのパラレル・ステートメント・キューに残しておく時間(秒)を指定します。


使用上の注意

  • すべてのパラメータは、NULLにデフォルト設定されます。ただし、CPUリソース割当て方法がEMPHASISの場合、リソースはすべてのユーザーに対して厳密に制限されます。

  • max_idle_timeおよびmax_idle_blocker_timeに指定された制限値については、PMONが1分に1回確認します。いずれかの制限を超過したセッションが見つかると、そのセッションは強制終了され、すべての状態がクリーン・アップされます。

  • 中間層サーバーによるセッション・プーリングの実装が行われている場合の3層アプリケーションでは、ほとんどの場合、パラメータswitch_time_in_callは有用です。switch_time_in_callを使用した場合のクライアントのリソース使用率は、今後別のクライアントが偶然同じセッションで実行されても影響しません。


CREATE_SIMPLE_PLANプロシージャ

このプロシージャでは、最大8つのコンシューマ・グループが含まれた単一レベルのリソース・プランを1ステップで作成します。リソース・プランの作成前にペンディング・エリアを手動で作成したり、CREATE_CONSUMER_GROUPプロシージャおよびCREATE_RESOURCE_PLAN_DIRECTIVESプロシージャを個別に使用する必要がありません。

構文

DBMS_RESOURCE_MANAGER.CREATE_SIMPLE_PLAN (
   simple_plan      IN  VARCHAR2  DEFAULT NULL,
   consumer_group1  IN  VARCHAR2  DEFAULT NULL,
   group1_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group2  IN  VARCHAR2  DEFAULT NULL,
   group2_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group3  IN  VARCHAR2  DEFAULT NULL,
   group3_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group4  IN  VARCHAR2  DEFAULT NULL,
   group4_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group5  IN  VARCHAR2  DEFAULT NULL,
   group5_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group6  IN  VARCHAR2  DEFAULT NULL,
   group6_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group7  IN  VARCHAR2  DEFAULT NULL,
   group7_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   consumer_group8  IN  VARCHAR2  DEFAULT NULL,
   group8_cpu       IN  NUMBER    DEFAULT NULL,   -- deprecated
   group1_percent   IN  NUMBER    DEFAULT NULL,
   group2_percent   IN  NUMBER    DEFAULT NULL,
   group3_percent   IN  NUMBER    DEFAULT NULL,
   group4_percent   IN  NUMBER    DEFAULT NULL,
   group5_percent   IN  NUMBER    DEFAULT NULL,
   group6_percent   IN  NUMBER    DEFAULT NULL,
   group7_percent   IN  NUMBER    DEFAULT NULL,
   group8_percent   IN  NUMBER    DEFAULT NULL);

パラメータ

表120-8 CREATE_SIMPLE_PLANプロシージャのパラメータ

パラメータ 説明

simple_plan

リソース・プランの名前。

consumer_group1

コンシューマ・グループの名前。

group1_cpu

グループのパーセント(非推奨)。

consumer_group2

コンシューマ・グループの名前。

group2_cpu

グループのパーセント(非推奨)。

consumer_group3

コンシューマ・グループの名前。

group3_cpu

グループのパーセント(非推奨)。

consumer_group4

コンシューマ・グループの名前。

group4_cpu

グループのパーセント(非推奨)。

consumer_group5

コンシューマ・グループの名前。

group5_cpu

グループのパーセント(非推奨)。

consumer_group6

コンシューマ・グループの名前。

group6_cpu

グループのパーセント(非推奨)。

consumer_group7

コンシューマ・グループの名前。

group7_cpu

グループのパーセント(非推奨)。

consumer_group8

コンシューマ・グループの名前。

group8_cpu

グループのパーセント(非推奨)。

group1_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group2_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group3_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group4_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group5_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group6_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group7_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。

group8_percent

このコンシューマ・グループに割り当てられたリソースのパーセント。



DELETE_CATEGORYプロシージャ

このプロシージャは、既存のリソース・コンシューマ・グループ・カテゴリを削除します。

構文

DBMS_RESOURCE_MANAGER.DELETE_CATEGORY (
   category        IN    VARCHAR2,
   new_comment     IN    VARCHAR2  DEFAULT NULL);

パラメータ

表120-9 DELETE_CATEGORYプロシージャのパラメータ

パラメータ 説明

category

コンシューマ・グループ・カテゴリの名前。



DELETE_CONSUMER_GROUPプロシージャ

このプロシージャは、リソース・コンシューマ・グループを定義するエントリを削除します。

構文

DBMS_RESOURCE_MANAGER.DELETE_CONSUMER_GROUP (
   consumer_group IN VARCHAR2); 

パラメータ

表120-10 DELETE_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

consumer_group

削除されるコンシューマ・グループの名前。



DELETE_PLANプロシージャ

このプロシージャは、指定の計画およびそれが参照するすべてのプラン・ディレクティブを削除します。

構文

DBMS_RESOURCE_MANAGER.DELETE_PLAN (
   plan IN VARCHAR2); 

パラメータ

表120-11 DELETE_PLANプロシージャのパラメータ

パラメータ 説明

plan

削除するリソース・プランの名前。



DELETE_PLAN_CASCADEプロシージャ

このプロシージャは、指定の計画およびそのすべての子(プラン・ディレクティブ、サブプラン、コンシューマ・グループ)を削除します。必須オブジェクトおよび必須ディレクティブは削除されません。

構文

DBMS_RESOURCE_MANAGER.DELETE_PLAN_CASCADE (
   plan IN VARCHAR2); 

パラメータ

表120-12 DELETE_PLAN_CASCADEプロシージャのパラメータ

パラメータ 説明

plan

計画の名前。


使用上の注意

DELETE_PLAN_CASCADEプロシージャでエラーが発生した場合は、操作がロールバックされるため、何も削除されません。


DELETE_PLAN_DIRECTIVEプロシージャ

このプロシージャは、リソース・プラン・ディレクティブを削除します。

構文

DBMS_RESOURCE_MANAGER.DELETE_PLAN_DIRECTIVE (
   plan              IN VARCHAR2, 
   group_or_subplan  IN VARCHAR2);

パラメータ

表120-13 DELETE_PLAN_DIRECTIVEプロシージャのパラメータ

パラメータ 説明

plan

リソース・プランの名前。

group_or_subplan

グループまたはサブプランの名前。



END_SQL_BLOCKプロシージャ

このプロシージャは、パラレル・ステートメント・キューイングで使用され、リソース・マネージャによってグループとして扱われる必要のあるSQL文のブロックの終了を示します。


注意:

この機能は、Oracle Database 11gリリース2(11.2.0.2)以上で使用できます。

構文

DBMS_RESOURCE_MANAGER.END_SQL_BLOCK;

使用上の注意

詳細は、『Oracle Database VLDBおよびパーティショニング・ガイド』のパラレル・ステートメント・キューイングに関する項およびリソース・マネージャによるパラレル・ステートメント・キューイングの管理に関する項を参照してください。


SET_CONSUMER_GROUP_MAPPINGプロシージャ

このプロシージャは、セッションのログイン属性およびランタイム属性に基づいて、セッションをコンシューマ・グループにマップするエントリを追加、削除または変更します。

構文

DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING(
   attribute        IN VARCHAR2, 
   value            IN VARCHAR2, 
   consumer_group   IN VARCHAR2 DEFAULT NULL); 

パラメータ

表120-14 SET_CONSUMER_GROUP_MAPPINGプロシージャのパラメータ

パラメータ 説明

attribute

追加または変更するマッピング属性。リストされている定数の1つを指定します。

value

一致させる属性値。これには、絶対マッピングと正規表現の両方が含まれます。

consumer_group

マップされたコンシューマ・グループの名前。マッピングを削除する場合はNULLを指定します。


使用上の注意

  • 指定された属性および値に対するマッピングが存在しない場合は、指定されたコンシューマ・グループへのマッピングが作成されます。指定された属性および値に対するマッピングがすでに存在する場合、マッピング先のコンシューマ・グループは、指定された属性および値を持つコンシューマ・グループに更新されます。consumer_group引数がNULLの場合は、指定された属性および値からのマッピングがすべて削除されます。

  • このサブプログラムでは、valueパラメータ用の単純な正規表現がサポートされています。SQLの'LIKE'演算子と同じセマンティクスを実装します。具体的には、複数文字のワイルドカードとして'%'、単一文字のワイルドカードとして'_'が使用されます。'\'文字を使用して、ワイルドカードをエスケープできます。属性が次のいずれかの場合にのみ、ワイルドカードを使用できることに注意してください。

    • CLIENT_OS_USER

    • CLIENT_PROGRAM

    • CLIENT_MACHINE

    • MODULE_NAME

    • MODULE_NAME_ACTION

    • SERVICE_MODULE

    • SERVICE_MODULE_ACTION

  • DBMS_RESOURCE_MANAGER.CLIENT_PROGRAMのコンシューマ・グループ・マッピング比較を実行する際に、指定されたCLIENT_PROGRAM値との比較前に@記号とそれ以降の文字がV$SESSION.PROGRAMから除去されます。


SET_CONSUMER_GROUP_MAPPING_PRIプロシージャ

1つのセッションが持つ複数の属性を使用して、セッションをコンシューマ・グループにマップできます。このプロシージャでは、属性のマッピングにおける優先順位を指定します。

構文

DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING_PRI(
   explicit               IN NUMBER, 
   oracle_user            IN NUMBER, 
   service_name           IN NUMBER, 
   client_os_user         IN NUMBER, 
   client_program         IN NUMBER, 
   client_machine         IN NUMBER, 
   module_name            IN NUMBER, 
   module_name_action     IN NUMBER,
   service_module         IN NUMBER,
   service_module_action  IN NUMBER);

パラメータ

表120-15 SET_CONSUMER_GROUP_MAPPING_PRIプロシージャのパラメータ

パラメータ 説明

explicit

明示的マッピングの優先順位。

oracle_user

Oracleユーザー名のマッピングの優先順位。

service_name

クライアント・サービス名のマッピングの優先順位。

client_os_user

クライアント・オペレーティング・システムのユーザー名のマッピングの優先順位。

client_program

クライアント・プログラムのマッピングの優先順位。

client_machine

クライアント・マシンのマッピングの優先順位。

module_name

アプリケーション・モジュール名のマッピングの優先順位。

module_name_action

アプリケーション・モジュール名およびアプリケーション・アクションのマッピングの優先順位。

service_module

サービス名およびアプリケーション・モジュール名のマッピングの優先順位。

module_name_action

サービス名、アプリケーション・モジュール名およびアプリケーション・アクションのマッピングの優先順位。


使用上の注意

  • このプロシージャには、引数として擬似属性explicitを含める必要があります。これは、1に設定する必要があります。これは、明示的なコンシューマ・グループの切替えに最も高い優先度が指定されていることを示します。次のパッケージ・プロシージャを使用して、コンシューマ・グループを明示的に切り替えます。

    • DBMS_SESSION.SWITCH_CURRENT_CONSUMER_GROUP

    • DBMS_RESOURCE_MANAGER.SWITCH_CONSUMER_GROUP_FOR_SESS

    • DBMS_RESOURCE_MANAGER.SWITCH_CONSUMER_GROUP_FOR_USER

  • 優先順位を指定する値は、それぞれ1から10の一意の整数にしてください。優先順位1から10を使用する場合、優先順位が最も高いのは1、最も低いのは10です。


SET_INITIAL_CONSUMER_GROUPプロシージャ


注意:

11g リリース1では、このプロシージャの使用は推奨されていません。このパッケージでこのプロシージャを使用することはできますが、初期コンシューマ・グループは、セッションとコンシューマ間のグループのマッピング・ルールによって設定されます。

ユーザーの初期コンシューマ・グループは、そのユーザーが作成したセッションが最初に所属しているコンシューマ・グループです。このプロシージャは、ユーザーに対して、初期のリソース・コンシューマ・グループを設定します。

構文

DBMS_RESOURCE_MANAGER.SET_INITIAL_CONSUMER_GROUP (
   user             IN   VARCHAR2, 
   consumer_group   IN   VARCHAR2);

パラメータ

表120-16 SET_INITIAL_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

user

ユーザーの名前。

consumer_group

ユーザーの初期コンシューマ・グループ。


使用上の注意

  • このプロシージャを実行するためには、ADMINISTER_RESOURCE_MANAGERまたはALTER USERシステム権限が必要です。ユーザーの初期コンシューマ・グループが設定される前に、ユーザーまたはPUBLICに対して、コンシューマ・グループへの切替え権限が直接付与されている必要があります。初期コンシューマ・グループに対する切替え権限は、そのユーザーに付与されているロールから与えることはできません。


    注意:

    この方法は、ALTER USER DEFAULT ROLEに対する方法に類似しています。

  • ユーザーの初期コンシューマ・グループが設定されていない場合は、自動的にDEFAULT_CONSUMER_GROUPがコンシューマ・グループになります。

  • DEFAULT_CONSUMER_GROUPPUBLICに付与された切替え権限を持つため、すべてのユーザーはこのコンシューマ・グループに対する切替え権限を自動的に付与されます。コンシューマ・グループを削除するとき、削除するグループを初期コンシューマ・グループとしていたすべてのユーザーは、DEFAULT_CONSUMER_GROUPを初期コンシューマ・グループとします。削除するコンシューマ・グループに所属している現行のアクティブなセッションは、すべてDEFAULT_CONSUMER_GROUPに切り替えられます。


SUBMIT_PENDING_AREAプロシージャ

このプロシージャは、リソース・マネージャに対する保留中の変更を発行します。変更を検証してコミットした後(この変更が有効な場合)、ペンディング・エリアを消去します。


注意:

SUBMIT_PENDING_AREAへのコールは、VALIDATE_PENDING_AREAが成功していても失敗する場合があります。これは、VALIDATE_PENDING_AREAをコールした後に、削除中の計画がインスタンスによってSUBMIT_PENDING_AREAをコールするまでにロードされてしまうことが原因です。

構文

DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA;

SWITCH_CONSUMER_GROUP_FOR_SESSプロシージャ

このプロシージャは、指定のセッションのリソース・コンシューマ・グループを変更します。また、トップレベルのユーザー・セッションに関連する(PQ)スレーブ・セッションのコンシューマ・グループも変更します。

構文

DBMS_RESOURCE_MANAGER.SWITCH_CONSUMER_GROUP_FOR_SESS (
   session_id      IN NUMBER, 
   session_serial  IN NUMBER, 
   consumer_group  IN VARCHAR2);

パラメータ

表120-17 SWITCH_CONSUMER_GROUP_FOR_SESSプロシージャのパラメータ

パラメータ 説明

session_id

ビューV$SESSIONでのSID列。

session_serial

ビューV$SESSIONでのSERIAL#列。

consumer_group

切替え先となるコンシューマ・グループの名前。



SWITCH_CONSUMER_GROUP_FOR_USERプロシージャ

このプロシージャは、指定のユーザーIDで、すべてのセッションのリソース・コンシューマ・グループを変更します。また、トップレベルのユーザー・セッションに関連する(PQ)スレーブ・セッションのコンシューマ・グループも変更します。

構文

DBMS_RESOURCE_MANAGER.SWITCH_CONSUMER_GROUP_FOR_USER (
   user            IN VARCHAR2, 
   consumer_group  IN VARCHAR2);

パラメータ

表120-18 SWITCH_CONSUMER_GROUP_FOR_USERプロシージャのパラメータ

パラメータ 説明

user

ユーザーの名前。

consumer_group

切替え先となるコンシューマ・グループの名前。


使用上の注意

  • SWITCH_CONSUMER_GROUP_FOR_SESSプロシージャおよびSWITCH_CONSUMER_GROUP_FOR_USERプロシージャは、特定のセッションまたはユーザーのCPUリソース割当てを増減します。これにより、UNIXのniceコマンドと類似した機能性が提供されます。

  • これらのプロシージャは、新規に指定されたコンシューマ・グループにセッションを即時に移動します。


SWITCH_PLANプロシージャ

このプロシージャは、現行のリソース・マネージャ・プランを設定します。

構文

DBMS_RESOURCE_MANAGER.SWITCH_PLAN(
   plan_name                     IN   VARCHAR2,
   sid                           IN   VARCHAR2 DEFAULT '*',
   allow_scheduler_plan_switches IN   BOOLEAN DEFAULT TRUE);

パラメータ

表120-19 SWITCH_PLANプロシージャのパラメータ

パラメータ 説明

plan_name

切替え先となる計画の名前。plan_nameに空の文字列('')を渡すと、リソース・マネージャは無効になります。

sid

sidパラメータを使用できるのは、Oracle Real Application Clusters環境のみです。このパラメータにより、計画を特定のインスタンスに対して変更できます。計画を変更するインスタンスのsidを指定します。また、すべてのインスタンスに対して計画を変更する場合は、'*'を指定してください。

allow_scheduler_plan_switches

FALSEに設定すると、ウィンドウ境界でのジョブ・スケジューラによる計画の自動切替えが無効になります。計画の自動切替えを再度有効にするには、管理者がallow_scheduler_plan_switchesTRUEに設定して、switch_planを再度コールする必要があります。デフォルトでは、ジョブ・スケジューラによる計画の自動切替えは有効になっています。



UPDATE_CATEGORYプロシージャ

このプロシージャは、既存のリソース・コンシューマ・グループ・カテゴリを更新します。

構文

DBMS_RESOURCE_MANAGER.UPDATE_CATEGORY (
   category        IN    VARCHAR2,
   new_comment     IN    VARCHAR2  DEFAULT NULL);

パラメータ

表120-20 UPDATE_CATEGORYプロシージャのパラメータ

パラメータ 説明

category

コンシューマ・グループ・カテゴリの名前。

new_comment

ユーザーのコメント。



UPDATE_CONSUMER_GROUPプロシージャ

このプロシージャは、リソース・コンシューマ・グループを定義するエントリを更新します。

構文

DBMS_RESOURCE_MANAGER.UPDATE_CONSUMER_GROUP (
   consumer_group  IN VARCHAR2, 
   new_comment     IN VARCHAR2 DEFAULT NULL, 
   new_cpu_mth     IN VARCHAR2 DEFAULT NULL,
   new_mgmt_mth    IN VARCHAR2 DEFAULT NULL,
   new_category    IN VARCHAR2 DEFAULT NULL); 

パラメータ

表120-21 UPDATE_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

consumer_group

コンシューマ・グループの名前。

new_comment

新しいユーザーのコメント。

new_cpu_mth

CPUリソース割当てに対する新規の方法名(非推奨)。

new_mgmt_mth

CPUリソース割当てに対する新規の方法名。

new_category

新規コンシューマ・グループ・カテゴリ。


使用上の注意

UPDATE_CONSUMER_GROUPに対するパラメータを指定しない場合、これらのパラメータは、データ・ディクショナリ内で変更されないまま残ります。


UPDATE_PLANプロシージャ

このプロシージャは、リソース・プランを定義するエントリを更新します。

構文

DBMS_RESOURCE_MANAGER.UPDATE_PLAN (
   plan                               IN VARCHAR2, 
   new_comment                        IN VARCHAR2 DEFAULT NULL, 
   new_cpu_mth                        IN VARCHAR2 DEFAULT NULL, -- deprecated
   new_active_sess_pool_mth           IN VARCHAR2 DEFAULT NULL,
   new_parallel_degree_limit_mth      IN VARCHAR2 DEFAULT NULL,
   new_queueing_mth                   IN VARCHAR2 DEFAULT NULL,
   new_mgmt_mth                       IN VARCHAR2 DEFAULT NULL,
   new_sub_plan                       IN BOOLEAN DEFAULT FALSE); 

パラメータ

表120-22 UPDATE_PLANプロシージャのパラメータ

パラメータ 説明

plan

リソース・プランの名前。

new_comment

新しいユーザーのコメント。

new_cpu_mth

CPUリソース割当てに対する新規の割当て方法名(非推奨)。

new_active_sess_pool_mth

アクティブな最大セッションに対する新規の方法名。

new_parallel_degree_limit_mth

並列度に対する新規の方法名。

new_queueing_mth

アクティブなセッションのプール機能で使用するキューイング・ポリシーのタイプを指定します。

new_mgmt_mth

コンシューマ・グループやサブ・プランがそれぞれ使用するリソース量(CPUやI/Oなど)を指定するためのリソース割当て方法。

  • EMPHASIS: コンシューマ・グループ間でのI/Oリソースの分散方法を指定する際にパーセントを使用する、マルチレベル・プランに向いています。

  • RATIO: I/Oリソースの分散方法を指定する際に比率を使用する、単一レベルの計画に向いています。

new_sub_plan

計画がサブプランとしての使用のみを目的としているかどうかに関する新規設定。


使用上の注意

  • UPDATE_PLANプロシージャに対するパラメータを指定しない場合、これらのパラメータは、データ・ディクショナリ内に変更されないまま残ります。

  • デフォルトのリソース割当て方法を使用する場合は、計画の作成または更新時に方法を指定する必要はありません。


UPDATE_PLAN_DIRECTIVEプロシージャ

このプロシージャは、リソース・プラン・ディレクティブを更新します。


注意:

new_parallel_target_percentageパラメータおよびnew_parallel_queue_timeoutパラメータに関連する機能は、Oracle Database 11gリリース2(11.2.0.2)以上で使用できます。

構文

DBMS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE (
   plan                             IN VARCHAR2, 
   group_or_subplan                 IN VARCHAR2, 
   new_comment                      IN VARCHAR2 DEFAULT NULL, 
   new_cpu_p1                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p2                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p3                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p4                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p5                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p6                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p7                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_cpu_p8                       IN NUMBER   DEFAULT NULL, -- deprecated 
   new_active_sess_pool_p1          IN NUMBER   DEFAULT NULL,
   new_queueing_p1                  IN NUMBER   DEFAULT NULL,
   new_parallel_degree_limit_p1     IN NUMBER   DEFAULT NULL,
   new_switch_group                 IN VARCHAR2 DEFAULT NULL, 
   new_switch_time                  IN NUMBER   DEFAULT NULL, 
   new_switch_estimate              IN BOOLEAN  DEFAULT FALSE, 
   new_max_est_exec_time            IN NUMBER   DEFAULT NULL, 
   new_undo_pool                    IN NUMBER   DEFAULT NULL,
   new_max_idle_time                IN NUMBER   DEFAULT NULL,
   new_max_idle_blocker_time        IN NUMBER   DEFAULT NULL,
   switch_time_in_call              IN NUMBER   DEFAULT NULL, -- deprecated
   new_mgmt_p1                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p2                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p3                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p4                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p5                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p6                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p7                      IN NUMBER   DEFAULT NULL,
   new_mgmt_p8                      IN NUMBER   DEFAULT NULL,
   new_switch_io_megabytes          IN NUMBER   DEFAULT NULL,
   new_switch_io_reqs               IN NUMBER   DEFAULT NULL,
   new_switch_for_call              IN BOOLEAN  DEFAULT NULL,
   new_max_utilization_limit        IN NUMBER   DEFAULT NULL,
   new_parallel_target_percentage   IN NUMBER   DEFAULT NULL, 
   new parallel_queue_timeout       IN NUMBER   DEFAULT NULL); 

パラメータ

表120-23 UPDATE_PLAN_DIRECTIVEプロシージャのパラメータ

パラメータ 説明

plan

リソース・プランの名前。

group_or_subplan

コンシューマ・グループの名前またはサブプランの名前。

new_comment

プラン・ディレクティブについてのコメント。

new_cpu_p1

CPUリソース割当て方法の最初のパラメータ(非推奨、new_mgmt_p1をかわりに使用)。

new_cpu_p2

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p2をかわりに使用)。

new_cpu_p3

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p3をかわりに使用)。

new_cpu_p4

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p4をかわりに使用)。

new_cpu_p5

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p5をかわりに使用)。

new_cpu_p6

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p6をかわりに使用)。

new_cpu_p7

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p7をかわりに使用)。

new_cpu_p8

CPUリソース割当て方法のパラメータ(非推奨、new_mgmt_p8をかわりに使用)。

new_active_sess_pool_p1

コンシューマ・グループに対するアクティブな同時セッションの最大数を指定します。デフォルトのNULLは、無制限を意味します。

new_queueing_p1

非アクティブ・セッション・キューにあるジョブ(実行待ち状態のジョブ)がタイムアウトする時間(秒)を指定します。デフォルトのNULLは、無制限を意味します。

new_parallel_degree_limit_p1

任意の操作の並列度を制限します。デフォルトのNULLは、無制限を意味します。

new_switch_group

他の切替え基準に達した場合に、現行セッションの切替え先となるコンシューマ・グループを指定します。デフォルトはNULLです。グループ名が'CANCEL_SQL'の場合は、他の切替え基準に達したときに現行のコールが取り消されます。グループ名が'KILL_SESSION'の場合は、他の切替え基準に達したときにセッションが終了します。

new_switch_time

アクションの実行前にセッションを実行できる時間(CPU秒)を指定します。デフォルトのNULLは、無制限を意味します。

new_switch_estimate

TRUEの場合は、実行前に、見積り実行時間が操作のコンシューマ・グループに自動的に切り換えられるようにOracleに指示します。デフォルトはFALSEです。

new_max_est_exec_time

セッションに許可する実行時間(CPU秒)の最大値を指定します。操作時間がMAX_EST_EXEC_TIMEより長いとオプティマイザが判断した場合、その操作は開始されず、ORA-07455が発行されます。オプティマイザが判断しない場合は、このディレクティブの効果はありません。デフォルトのNULLは、無制限を意味します。

new_undo_pool

このコンシューマ・グループによってコミットされないトランザクションに対応するUNDOレコードのサイズをKB単位で制限します。

new_max_idle_time

セッションのアイドル時間の最大値を示します。デフォルトのNULLは、無制限を意味します。

new_max_idle_blocker_time

別のセッションのリソース取得をブロックしながら、セッションのアイドル状態を維持できる時間(秒)の最大値。

new_switch_time_in_call

非推奨。このパラメータを指定すると、new_switch_timenew_switch_time_in_callに設定され、new_switch_for_callTRUEに設定されます。

new_mgmt_p1

レベル1のリソース割当て値(new_cpu_p1のかわり)。

  • EMPHASIS: リソースのパーセントを第1レベルに指定します。

  • RATIO: リソース使用率の重みを指定します。

new_mgmt_p2

レベル2のリソース割当て値(new_cpu_p2のかわり)。

  • EMPHASIS: リソースのパーセントを第2レベルに指定します。

  • RATIO: なし

new_mgmt_p3

レベル3のリソース割当て値(new_cpu_p3のかわり)。

  • EMPHASIS: リソースのパーセントを第3レベルに指定します。

  • RATIO: なし

new_mgmt_p4

レベル4のリソース割当て値(new_cpu_p4のかわり)。

  • EMPHASIS: リソースのパーセントを第4レベルに指定します。

  • RATIO: なし

new_mgmt_p5

レベル5のリソース割当て値(new_cpu_p5のかわり)。

  • EMPHASIS: リソースのパーセントを第5レベルに指定します。

  • RATIO: なし

new_mgmt_p6

レベル6のリソース割当て値(new_cpu_p6のかわり)。

  • EMPHASIS: リソースのパーセントを第6レベルに指定します。

  • RATIO: なし

new_mgmt_p7

レベル7のリソース割当て値(new_cpu_p7のかわり)。

  • EMPHASIS: リソースのパーセントを第7レベルに指定します。

  • RATIO: なし

new_mgmt_p8

レベル8のリソース割当て値(new_cpu_p8のかわり)。

  • EMPHASIS: リソースのパーセントを第8レベルに指定します。

  • RATIO: なし

new_switch_io_megabytes

アクションの実行前にセッションが発行できるI/Oの量(MB)を指定します。デフォルトのNULLは、無制限を意味します。

new_switch_io_reqs

アクションの実行前にセッションが発行できるI/Oリクエストの数を指定します。デフォルトのNULLは、無制限を意味します。

new_switch_for_call

new_switch_timenew_switch_io_megabytesまたはnew_switch_io_reqsパラメータのためにアクションが実行される場合、最初のコールの終了時に、コンシューマ・グループが元のコンシューマ・グループにリストアされるように指定します。デフォルト値のFALSEは、最初のコールの終了時に元のコンシューマ・グループがリストアされないことを意味します。

new_max_utilization_limit

このコンシューマ・グループまたはサブプランで使用できるCPUの最大使用率を指定します。有効な値は0%から100%です。制限の設定を解除するには、-1を使用します。

new_parallel_target_percentage

コンシューマ・グループで使用できるOracle RAC環境におけるパラレル・サーバーの目標数の最大パーセントを指定します。このコンシューマ・グループから起動される追加のパラレル・ステートメントは、すべてキューに入れられます。デフォルトはNULLで、目標数の制限が100%であることを意味します。キューイングの有効な値の範囲は、0から100(%)です。プラン・ディレクティブを更新する場合、値に-1を指定すると、値がNULLにリセットされます。

コンシューマ・グループによってOracle RACデータベース内で実行されているパラレル・ステートメントが存在しない場合、1番目のパラレル・ステートメントはこの制限を超えることができます。

Oracle RAC環境でのパラレル・サーバーの目標数は、すべてのインスタンスにおけるparallel_servers_targetパラメータの合計になります。

new_parallel_queue_timeout

問合せを、エラー(ORA-07454)によって削除および終了するまでにコンシューマ・グループのパラレル・ステートメント・キューに残しておく時間(秒)を指定します。


使用上の注意

  • UPDATE_PLAN_DIRECTIVEに対してパラメータを指定しない場合、これらのパラメータは、データ・ディクショナリ内で変更されないまま残ります。

  • new_max_idle_timeおよびnew_max_idle_blocker_timeに指定された制限値については、PMONが1分に1回確認します。いずれかの制限を超過したセッションが見つかると、そのセッションは強制終了され、すべての状態がクリーン・アップされます。

  • 中間層サーバーによるセッション・プーリングの実装が行われている場合の3層アプリケーションでは、ほとんどの場合、パラメータnew_switch_time_in_callは有用です。new_switch_time_in_callをオンに設定した場合のクライアントのリソース使用率は、今後別のクライアントのコンシューマ・グループが偶然同じセッションで実行されても影響しません。

  • リソース・プラン・ディレクティブの任意の数値パラメータを消去する(0またはNULLにする)には、UPDATE_PLAN_DIRECTIVEプロシージャを使用して、値を-1に設定します。


VALIDATE_PENDING_AREAプロシージャ

このプロシージャは、リソース・マネージャに対する保留中の変更内容を検証します。

構文

DBMS_RESOURCE_MANAGER.VALIDATE_PENDING_AREA;