5.2.2.1 コンシューマ・グループおよびカテゴリの設定

コンシューマ・グループおよびカテゴリは、PL/SQL DBMS_RESOURCE_MANAGERパッケージのプロシージャを使用して設定します。

新規のコンシューマ・グループおよびカテゴリを作成するか、事前定義済のコンシューマ・グループまたはカテゴリのいずれかを使用することができます。カテゴリ・プランを使用する予定がない場合は、カテゴリを設定する必要はありません。

ノート:

コンシューマ・グループおよびカテゴリはデータベースに作成されますが、セルに明示的に作成することはできません。

コンシューマ・グループおよびカテゴリを管理するためのDBMS_RESOURCE_MANAGERプロシージャを実行する前に、最初にペンディング・エリアを作成する必要があります。DBMS_RESOURCE_MANAGER PL/SQLパッケージのプロシージャを実行するには、システム権限のADMINISTER_RESOURCE_MANAGERが必要です。

次のPL/SQLコマンドは、コンシューマ・グループおよびカテゴリで使用されます。

  • カテゴリを管理する場合: CREATE_CATEGORY()DELETE_CATEGORY()およびUPDATE_CATEGORY()

  • コンシューマ・グループを管理する場合: CREATE_CONSUMER_GROUP()およびUPDATE_CONSUMER_GROUP()

  • カテゴリにコンシューマ・グループを割り当てる場合: CREATE_CONSUMER_GROUP()またはUPDATE_CONSUMER_GROUP()

データベースには、各自で設定したコンシューマ・グループの他に、事前定義済のコンシューマ・グループも含まれています。DBA_RSRC_CONSUMER_GROUPSビューには、コンシューマ・グループに関する情報が表示され、DBA_RSRC_CATEGORIESビューには、データベース内のカテゴリに関する情報が表示されます。

例5-1 データベースのPL/SQLを使用したコンシューマ・グループおよびカテゴリの設定

この例は、データベースにコンシューマ・グループおよびカテゴリを設定する方法を示しています。MAINTENANCEカテゴリが事前定義されますが、この例では作成されません。

BEGIN
  DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA();

  DBMS_RESOURCE_MANAGER.CREATE_CATEGORY(
     CATEGORY => 'dss',
     COMMENT => 'DSS consumer groups');

  DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( 
     CONSUMER_GROUP => 'critical_dss',
     CATEGORY => 'dss',
     COMMENT => 'performance-critical DSS queries');

  DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( 
     CONSUMER_GROUP => 'normal_dss',
     CATEGORY => 'dss',
     COMMENT => 'non performance-critical DSS queries');

  DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( 
     CONSUMER_GROUP => 'etl',
     CATEGORY => 'maintenance',
     COMMENT => 'data import operations');

  DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA();
END;
/

例5-2 Oracle Databaseのコンシューマ・グループおよびカテゴリ

この例は、DBA_RSRC_CONSUMER_GROUPSビューに対する問合せを示しています。

SQL> SELECT consumer_group, category FROM DBA_RSRC_CONSUMER_GROUPS where 
     consumer_group not like 'ORA%' ORDER BY category;

CONSUMER_GROUP                 CATEGORY
------------------------------ ------------------------------
SYS_GROUP                      ADMINISTRATIVE
ETL_GROUP                      BATCH
BATCH_GROUP                    BATCH
DSS_GROUP                      BATCH
CRITICAL_DSS                   DSS
NORMAL_DSS                     DSS
DSS_CRITICAL_GROUP             INTERACTIVE
INTERACTIVE_GROUP              INTERACTIVE
ETL                            MAINTENANCE
LOW_GROUP                      OTHER
OTHER_GROUPS                   OTHER
AUTO_TASK_CONSUMER_GROUP       OTHER
DEFAULT_CONSUMER_GROUP         OTHER
 
13 rows selected