用途
EXPLAIN
WORK
文を使用すると、Oracle Automatic Storage Management (Oracle ASM)のディスク・グループ・リバランス操作に関連する作業の見積りを取得できます。
この文で、V$ASM_ESTIMATE
動的パフォーマンス・ビューに1行挿入されます。この行には、リバランス操作で移動する必要がある見積り割当て単位数を表すNUMBER
値、EST_WORK
が含まれます。
関連項目:
|
前提条件
EXPLAIN
WORK
文を実行する場合、V$ASM_ESTIMATE
動的パフォーマンス・ビューに行を挿入するための権限が必要です。
作業見積り取得の対象となるALTER
DISKGROUP
文を実行するための権限も必要です。
EXPLAIN
WORK
文により生成される作業見積りを表示する場合、V$ASM_ESTIMATE
動的パフォーマンス・ビューを問い合せるための権限が必要です。
EXPLAIN
WORK
文はデータ操作言語(DML)文であり、データ定義言語(DDL)文ではありません。そのため、EXPLAIN
WORK
文で加えられた変更内容は暗黙的にコミットされません。V$ASM_ESTIMATE
ビューのEXPLAIN
WORK
文で生成された行を保存する場合は、この文を指定したトランザクションをコミットする必要があります。
セマンティクス
V$ASM_ESTIMATE
ビューでこの文により作成された行にあるSTATEMENT_ID
列の値を指定します。この値によって、これらの行をビューの中の他の行と区別できます。ビューに多数の作業見積りの行が含まれている場合は、必ず、STATEMENT_ID
の値を指定します。この句を省略した場合、デフォルトでSTATEMENT_ID
値がNULLに設定されます。
作業見積りの対象となるSQL文を指定します。次の句を含むALTER
DISKGROUP
文を指定できます。
add_disk_clause
(1つ以上のデスクをディスク・グループに追加します)
disk_online_clause
(1つ以上のディスクをオンラインにします)
drop_disk_clause
(1つ以上のディスクをディスク・グループから削除します)
rebalance_diskgroup_clause
(ディスク・グループをリバランスします)
replace_disk_clause
(ディスク・グループの1つ以上のディスクを置換します)
resize_disk_clause
(ディスク・グループのディスクをサイズ変更します)
undrop_disk_clause
(ディスク・グループからのディスクの削除を取り消します)
EXPLAIN
WORK
文は、rebalance_diskgroup_clause
の発行時に発生する明示的ディスク・グループ・リバランス、またはその他の任意の句の発行時に発生する自動ディスク・グループ・リバランス中に移動する必要がある割当て単位数を見積もります。
例
次の文は、ディスク・グループdg1
を明示的にリバランスするために必要な作業量を見積もります。結果の見積りは、V$ASM_ESTIMATE
ビューに挿入されます。
EXPLAIN WORK FOR ALTER DISKGROUP dg1 REBALANCE; SELECT est_work FROM V$ASM_ESTIMATE; EST_WORK -------- 5680
次の文は、ディスクの削除後にディスク・グループdg2
を自動的にリバランスするために必要な作業量を見積もります。文はSTATEMENT_ID
を指定し、これによりV$ASM_ESTIMATE
ビューで適切な作業見積りを問い合せることができます。
EXPLAIN WORK SET STATEMENT_ID='drop d0' FOR ALTER DISKGROUP dg2 DROP DISK d0; Explained. SELECT est_work FROM V$ASM_ESTIMATE WHERE STATEMENT_ID='drop d0'; EST_WORK -------- 426