76 DBMS_HEAT_MAP
DBMS_HEAT_MAP
パッケージは、ブロック、エクステント、セグメント、オブジェクトおよび表領域などの様々なレベルのストレージでヒート・マップを外部化するためのインタフェースを提供します。サブプログラムの2番目のセットは、バックグラウンドで実体化されたトップN表領域のヒート・マップを外部化します。
この章のトピックは、次のとおりです:
参照:
-
『Oracle Database VLDBおよびパーティショニング・ガイド』の「ヒート・マップ」
76.1 DBMS_HEAT_MAPの概要
ILM戦略を実装するために、Oracle Databaseのヒート・マップを使用すればデータのアクセスと変更を追跡できます。自動データ最適化(ADO)も使用すれば、データベース内の異なる層のストレージ間で、データの圧縮および移動を自動化できます。
ヒート・マップは、ブロック・レベルの変更回数を追跡し、セグメント・レベルの複数アクセスの統計を追跡します。SYSTEM
およびSYSAUX
表領域のオブジェクトは追跡されません。DBMS_HEAT_MAP
は、ブロック、エクステント、セグメント、オブジェクトおよび表領域などの様々なレベルのヒート・マップ統計へのアクセスを提供します。
76.2 DBMS_HEAT_MAPのセキュリティ・モデル
実行権限は、PUBLIC
に付与されます。このパッケージのプロシージャは、コール元のセキュリティ下で実行されます。ユーザーには、オブジェクトに関するANALYZE
権限が必要です。
76.3 DBMS_HEAT_MAPサブプログラムの要約
この表では、DBMS_HEAT_MAP
パッケージのサブプログラムをリストし、簡単に説明します。
表76-1 DBMS_HEAT_MAPパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
表セグメント内のブロックごとの最終変更時間を戻します。 |
|
表セグメントのエクステント・レベルのヒート・マップ統計を戻します。 |
|
オブジェクトに属するすべてのセグメントの最小、最大および平均のアクセス時間を戻します。 |
|
指定のセグメントのヒート・マップ属性を戻します。 |
|
表領域内のすべてのセグメントの最小、最大および平均のアクセス時間を戻します。 |
76.3.1 BLOCK_HEAT_MAPファンクション
この表ファンクションは、表セグメント内のブロックごとの最終変更時間を戻します。データ以外のセグメント・タイプに対しては、何の情報も戻しません。
構文
DBMS_HEAT_MAP.BLOCK_HEAT_MAP ( owner IN VARCHAR2, segment_name IN VARCHAR2, partition_name IN VARCHAR2 DEFAULT NULL, sort_columnid IN NUMBER DEFAULT NULL, sort_order IN VARCHAR2 DEFAULT NULL) RETURN hm_bls_row PIPELINED;
パラメータ
表76-2 BLOCK_HEAT_MAPファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントの所有者 |
|
パーティション化されていない表の表名またはパーティション化されている表の(サブ)パーティション。パーティション化された表として表名を指定した場合、戻される行はありません。 |
|
デフォルトは |
|
出力のソートに使用する列のID。有効な値は1..9です。無効な値は無視されます。 |
|
デフォルトは |
戻り値
表76-3 BLOCK_HEAT_MAPファンクションの戻り値(出力パラメータ)
パラメータ | 説明 |
---|---|
|
セグメントの所有者 |
|
パーティション化されていない表のセグメント名 |
|
パーティション名またはサブパーティション名 |
|
セグメントが設定されている表領域 |
|
セグメント内のブロックの絶対ファイル番号 |
|
セグメント内のブロックの相対ファイル番号 |
|
ブロックのブロック番号 |
|
ブロックの最終変更時間 |
76.3.2 EXTENT_HEAT_MAPファンクション
この表ファンクションは、表セグメントのエクステント・レベルのヒート・マップ統計を戻します。データ以外のセグメント・タイプに対しては、何の情報も戻しません。最小変更時間と最大変更時間を含む、エクステント・レベルの集計が含まれます。
構文
DBMS_HEAT_MAP.EXTENT_HEAT_MAP ( owner IN VARCHAR2, segment_name IN VARCHAR2, partition_name IN VARCHAR2 DEFAULT NULL, RETURN hm_els_row PIPELINED;
パラメータ
表76-4 EXTENT_HEAT_MAPファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントの所有者 |
|
パーティション化されていない表の表名またはパーティション化されている表の(サブ)パーティション。パーティション化された表として表名を指定した場合、戻される行はありません。 |
|
デフォルトは |
戻り値
表76-5 EXTENT_HEAT_MAPファンクションの戻り値(出力パラメータ)
パラメータ | 説明 |
---|---|
|
セグメントの所有者 |
|
パーティション化されていない表のセグメント名 |
|
パーティション名またはサブパーティション名 |
|
セグメントが設定されている表領域 |
|
セグメント内のブロックの絶対ファイル番号 |
|
セグメント内のブロックの相対ファイル番号 |
|
ブロックのブロック番号 |
|
エクステント内のブロック数 |
|
エクステント内のバイト数 |
|
ブロックの最終変更時間の最小値 |
|
ブロックの最終変更時間の最大値 |
|
ブロックの最終変更時間の平均値 |
76.3.3 OBJECT_HEAT_MAPファンクション
この表は、オブジェクトに属するすべてのセグメントの最小、最大および平均のアクセス時間を戻します。
オブジェクトは表である必要があります。この表ファンクションは、表以外のオブジェクト表でコールするとエラーを発生します。
構文
DBMS_HEAT_MAP.OBJECT_HEAT_MAP ( object_owner IN VARCHAR2, object_name IN VARCHAR2) RETURN hm_object_table PIPELINED;
パラメータ
表76-6 OBJECT_HEAT_MAPファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが設定されている表領域 |
|
セグメント・ヘッダー相対ファイル番号 |
戻り値
表76-7 OBJECT_HEAT_MAPファンクションの戻り値(出力パラメータ)
パラメータ | 説明 |
---|---|
|
トップ・レベルのセグメントの名前 |
|
パーティション名 |
|
表領域の名前 |
|
|
|
バイト単位のセグメント・サイズ |
|
セグメントの最も古い書込み時間 |
|
セグメントの最新の書込み時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い読取り時間 |
|
セグメントの最新の読取り時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い索引参照時間 |
|
セグメントの最新の索引参照時間 |
|
セグメントの平均索引参照時間 |
|
セグメントの最も古い全表スキャン時間 |
|
セグメントの最新の全表スキャン時間 |
|
セグメントの平均全表スキャン時間 |
76.3.4 SEGMENT_HEAT_MAPプロシージャ
このプロシージャは、指定のセグメントのヒート・マップ属性を戻します。
構文
DBMS_HEAT_MAP.SEGMENT_HEAT_MAP ( tablespace_id IN NUMBER, header_file IN NUMBER, header_block IN NUMBER, segment_objd IN NUMBER, min_writetime OUT DATE, max_writetime OUT DATE, avg_writetime OUT DATE, min_readtime OUT DATE, max_readtime OUT DATE, avg_readtime OUT DATE, min_lookuptime OUT DATE, max_lookuptime OUT DATE, avg_lookuptime OUT DATE, min_ftstime OUT DATE, max_ftstime OUT DATE, avg_ftstime OUT DATE);
パラメータ
表76-8 SEGMENT_HEAT_MAPプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが設定されている表領域 |
|
セグメント・ヘッダー相対ファイル番号 |
|
セグメント・ヘッダー・ブロック番号 |
|
セグメントの |
戻り値
表76-9 SEGMENT_HEAT_MAPプロシージャの戻り値(出力パラメータ)
パラメータ | 説明 |
---|---|
|
セグメントの最も古い書込み時間 |
|
セグメントの最新の書込み時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い読取り時間 |
|
セグメントの最新の読取り時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い索引参照時間 |
|
セグメントの最新の索引参照時間 |
|
セグメントの平均索引参照時間 |
|
セグメントの最も古い全表スキャン時間 |
|
セグメントの最新の全表スキャン時間 |
|
セグメントの平均全表スキャン時間 |
76.3.5 TABLESPACE_HEAT_MAPファンクション
この表は、表領域内のすべてのセグメントの最小、最大および平均のアクセス時間を戻します。
構文
DBMS_HEAT_MAP.TABLESPACE_HEAT_MAP ( tablespace_name IN VARCHAR2) RETURN hm_tablespace_table PIPELINED;
パラメータ
表76-10 TABLESPACE_HEAT_MAPプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前 |
戻り値
表76-11 TABLESPACE_HEAT_MAPプロシージャの戻り値(出力パラメータ)
パラメータ | 説明 |
---|---|
|
表領域内のセグメントの合計数 |
|
表領域内でセグメントによって使用される領域 |
|
セグメントの最も古い書込み時間 |
|
セグメントの最新の書込み時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い読取り時間 |
|
セグメントの最新の読取り時間 |
|
セグメントの平均書込み時間 |
|
セグメントの最も古い索引参照時間 |
|
セグメントの最新の索引参照時間 |
|
セグメントの平均索引参照時間 |
|
セグメントの最も古い全表スキャン時間 |
|
セグメントの最新の全表スキャン時間 |
|
セグメントの平均全表スキャン時間 |