83 DBMS_ILM_ADMIN

DBMS_ILM_ADMINパッケージでは、自動データ最適化(ADO)ポリシーの実行をカスタマイズするインタフェースが提供されます。パーティショニングと圧縮を組み合せて、ADOポリシーを使用することで、情報ライフサイクル管理(ILM)計画の実装を支援できます。

この章のトピックは、次のとおりです:

参照:

83.1 DBMS_ILM_ADMINの概要

ILM戦略を実装するために、Oracle Databaseのヒート・マップを使用すればデータのアクセスと変更を追跡できます。自動データ最適化(ADO)も使用すれば、データベース内の異なる層のストレージ間で、データの圧縮および移動を自動化できます。

83.2 DBMS_ILM_ADMINのセキュリティ・モデル

このパッケージは、定義者の権限で実行します。このユーザーにはDBA権限が必要です。

83.3 DBMS_ILM_ADMINの定数

このトピックの表では、DBMS_ILM_ADMINパッケージによって使用される定数を示します。

値の列は、定数が解決される数値または文字値を示します。

表83-1 DBMS_ILM_ADMINの定数

定数 タイプ 説明

ABS_JOBLIMIT

12

NUMBER

同時ILM ADOジョブの絶対数を示します。

EXECUTION_INTERVAL

1

NUMBER

ADOバックグラウンド評価が実行される頻度を決定します。分単位で指定されます。

RETENTION_TIME

2

NUMBER

ADO履歴が保持される時間を制御します。日数で指定されます。

EXECUTION_MODE

4

NUMBER

ADOのオンラインまたはオフラインでの実行を制御します。このパラメータの値は、DBMS_ILM_ADMIN.ILM_EXECUTION_OFFLINE、またはDBMS_ILM_ADMIN.ILM_EXECUTION_ONLINEのどちらかです。

JOBLIMIT

5

NUMBER

常時、ILM ADOジョブ数の上限を制御します。同時ADOジョブの最大数は、JOBLIMIT*(インスタンス数)*(インスタンスごとのCPU数)です。

JOB_SIZELIMIT

13

NUMBER

単一のILM ADO行レベル圧縮ジョブにより処理されるデータのサイズを指定します(MB単位)。

ENABLED

7

NUMBER

バックグラウンドADOをオフまたはオンにする方法を提供します。

TBS_PERCENT_USED

8

NUMBER

表領域が一杯とみなされるタイミングを決定します。表領域割当て容量の割合として指定されます。

TBS_PERCENT_FREE

9

NUMBER

表領域割当て容量の割合として、目標となる表領域の記憶域をADOアクションを使用して決定します。

DEG_PARALLEL

10

NUMBER

ADOジョブに使用する並列度を決定します。

POLICY_TIME

11

NUMBER

ADOポリシーを日数ではなく秒単位で指定されたものとして扱うかどうかを決定します。可能な値は、ILM_POLICY_IN_SECONDS (ポリシーの時間を秒単位で扱う)、またはILM_POLICY_IN_DAYS (ポリシーの時間を日単位で扱う、デフォルト)です。

HEAT_MAP_SEG_READ

1

NUMBER

セグメント読取り完了

HEAT_MAP_SEG_WRITE

2

NUMBER

セグメント書込み完了

HEAT_MAP_SEG_SCAN

4

NUMBER

全表スキャン完了

HEAT_MAP_SEG_LOOKUP

8

NUMBER

索引スキャン完了

DBMS_ILM_ADMINパッケージでは、表83-2に示す定数がパラメータ値として使用されます。

表83-2 パラメータ値として使用されるDBMS_ILM_ADMINの定数

定数 タイプ 説明

ILM_EXECUTION_OFFLINE

1

NUMBER

ADOアクションの実行中にオブジェクトをオフラインにできるように指定します。

ILM_EXECUTION_ONLINE

2

NUMBER

ADOアクションの実行中にオブジェクトがオンラインになるように指定します。

ILM_ENABLED

1

NUMBER

自動ADOポリシーの評価と実行が有効であることを示します。

ILM_DISABLED

2

NUMBER

自動ADOポリシーの評価と実行が無効であることを示します。

ILM_POLICY_IN_DAYS

0

NUMBER

ポリシーが日数で指定されていることを示します。これはデフォルトです。

ILM_POLICY_IN_SECONDS

1

NUMBER

ポリシーが(日数ではなく)分単位で指定されていることを示します。これを使用することで、ポリシーの期間を待たずに迅速にADOポリシーの評価をテストできることがあります。

83.4 DBMS_ILM_ADMINサブプログラムの要約

この表では、DBMS_ILM_ADMINパッケージのサブプログラムをリストし、簡単に説明します。

表83-3 DBMS_ILM_ADMINパッケージのサブプログラム

サブプログラム 説明

CLEAR_HEAT_MAP_ALLプロシージャ

ダミー行以外のすべての行を削除します。

CLEAR_HEAT_MAP_TABLEプロシージャ

ヒート・マップ表のすべてまたは一部の統計を消去して、特定のパターンに一致する特定の表またはセグメントの行を削除するか、それらの行をすべて削除します。

CUSTOMIZE_ILMプロシージャ

ILM実行関連のパラメータに値を指定することで、ILMの実行環境をカスタマイズします。

DISABLE_ILMプロシージャ

すべてのバックグラウンドILMスケジューリングをオフにします。

ENABLE_ILMプロシージャ

すべてのバックグラウンドILMスケジューリングをオンにします。

SET_HEAT_MAP_ALLプロシージャ

すべての表のヒート・マップ行を更新または挿入します。

SET_HEAT_MAP_STARTプロシージャ

ヒート・マップ・データの収集開始日を設定します。

SET_HEAT_MAP_TABLEプロシージャ

指定された表またはセグメントに対して表の更新または挿入を行います。

83.4.1 CLEAR_HEAT_MAP_ALLプロシージャ

このプロシージャは、ダミー行を除くHEAT_MAP_STAT$内のすべての行を削除します。

構文

DBMS_ILM_ADMIN.CLEAR_HEAT_MAP_ALL;

83.4.2 CLEAR_HEAT_MAP_TABLEプロシージャ

このプロシージャは、ヒート・マップ表のすべてまたは一部の統計を消去して、特定のパターンに一致する特定の表またはセグメントの行を削除するか、それらの行をすべて削除します。

構文

DBMS_ILM_ADMIN.CLEAR_HEAT_MAP_TABLE  (
   owner                   IN  VARCHAR2,
   tablename               IN  VARCHAR2,
   partition               IN  VARCHAR2 default '',
   access_date             IN  DATE DEFAULT NULL,
   segment_access_summary  IN  NUMBER DEFAULT NULL);

パラメータ

表83-4 CLEAR_HEAT_MAP_TABLEプロシージャのパラメータ

パラメータ 説明

owner

表の所有者

tablename

表名

partition

サブオブジェクトの名前(デフォルトはNULL)

access_date

削除されるHEAT_MAP_STAT$内のエントリの日付

segment_access_summary

セグメントに対して実行されたアクセス操作を示す、セグメント・アクセス制限の要約

83.4.3 CUSTOMIZE_ILMプロシージャ

このプロシージャは、ILM実行関連のパラメータに値を指定することで、ILMの実行環境をカスタマイズします。これらの値は、次回のバックグラウンド・スケジューリングで有効になります。

構文

DBMS_ILM_ADMIN.CUSTOMIZE_ILM  (
   parameter            IN       NUMBER,
   value                IN       NUMBER);

パラメータ

表83-5 CUSTOMIZE_ILMプロシージャのパラメータ

パラメータ 説明

parameter

DBMS_ILM_ADMINパッケージで定義されたパラメータ定数の1つです。

value

パラメータの値です。

83.4.4 DISABLE_ILMプロシージャ

このプロシージャは、すべてのバックグラウンドILMスケジューリングをオフにします。

構文

DBMS_ILM_ADMIN.DISABLE_ILM;

83.4.5 ENABLE_ILMプロシージャ

このプロシージャは、すべてのバックグラウンドILMスケジューリングをオンにします。

構文

DBMS_ILM_ADMIN.ENABLE_ILM;

83.4.6 SET_HEAT_MAP_ALLプロシージャ

このプロシージャは、HTTP要求ヘッダーを設定します。要求ヘッダーは、設定後ただちにWebサーバーに送信されます。

構文

DBMS_ILM_ADMIN.SET_HEAT_MAP_ALL  (
   access_date            IN DATE,
   segment_access_summary IN NUMBER);

パラメータ

表83-6 SET_HEAT_MAP_ALLプロシージャのパラメータ

パラメータ 説明

access_date

追加されるHEAT_MAP_STAT$内のエントリの日付

segment_access_summary

セグメントに対して実行されたアクセス操作を示す、セグメント・アクセス制限の要約

83.4.7 SET_HEAT_MAP_STARTプロシージャ

このプロシージャは、ヒート・マップ・データの収集開始日を設定します。

構文

DBMS_ILM_ADMIN.SET_HEAT_MAP_START  (
   start_date  IN   DATE);

パラメータ

表83-7 SET_HEAT_MAP_STARTプロシージャのパラメータ

パラメータ 説明

start_date

すべての統計を有効にする新しい開始日付を示します。

83.4.8 SET_HEAT_MAP_TABLEプロシージャ

このプロシージャは、指定された表またはセグメントに対して表の更新または挿入を行います。

構文

DBMS_ILM_ADMIN.SET_HEAT_MAP_TABLE  (
   owner                  IN VARCHAR2,
   tablename              IN VARCHAR2,
   partition              IN VARCHAR2 DEFAULT '',
   access_date            IN DATE DEFAULT NULL,
   segment_access_summary IN NUMBER DEFAULT NULL);

パラメータ

表83-8 SET_HEAT_MAP_TABLEプロシージャのパラメータ

パラメータ 説明

owner

表の所有者

tablename

表名

partition

サブオブジェクトの名前(デフォルトはNULL)

access_date

追加されるHEAT_MAP_STAT$内のエントリの日付

segment_access_summary

セグメントに対して実行されたアクセス操作を示す、セグメント・アクセス制限の要約