従来の表再編成では、シャドー・コピー方式を使用して、再編成される表の完全なコピーを作成します。
従来のオフライン表再編成操作には、4 つのフェーズがあります。
- ソート - このフェーズでは、索引が REORG TABLE コマンドで指定された場合、またはクラスタリング索引が表で定義された場合、表の行は最初にその索引に従ってソートされます。
INDEXSCAN オプションが指定された場合、索引スキャンが表をソートするのに使用されます。それ以外の場合、表スキャン・ソートが使用されます。
このフェーズはクラスタリング表の REORG 操作にのみ適用されます。
スペース再利用 REORG 操作は、ビルド・フェーズから始まります。
- ビルド - このフェーズでは、再編成された表全体のコピーが、その表スペースの中か、REORG TABLE コマンドで指定された TEMPORARY 表スペース内のいずれかに作成されます。
- 置換 - このフェーズでは、TEMPORARY 表スペースからのコピーによって元の表オブジェクトが置換されるか、再編成されている表の表スペース内に新しく作成されたオブジェクトへのポインターが作成されます。
- 索引すべての再作成 - このフェーズでは、表に定義されたすべての索引が再作成されます。
スナップショット・モニターまたはスナップショット管理ビューを使用して、表の REORG 操作の進行をモニターし、現在のフェーズを識別します。
オンライン・モードよりもオフライン・モードの方が、ロック状態による制限が厳しくなります。
コピーの作成中に、表への読み取りアクセスは可能です。
しかし、元の表を再編成したコピーに置き換える際、または索引を再作成する際は、表の排他的アクセスが必要となります。
表の REORG 処理の間は、終始 IX 表スペース・ロックが必要です。
ビルド・フェーズでは、U ロックが取得され、これが表に対して保持されます。
U ロックでは、ロック所有者は表のデータを更新できます。他のアプリケーションがデータを更新することはできませんが、読み取りアクセスは許可されます。
置換フェーズが開始すると、U ロックは Z ロックにアップグレードされます。
このフェーズ中は、他のアプリケーションはデータにアクセスできません。このロックは、表の REORG 操作が完了するまで保持されます。
オフライン再編成処理によって、いくつかのファイルが作成されます。これらのファイルは、データベース・ディレクトリーに格納されます。
これらのファイル名には、表スペースとオブジェクト ID が接頭部に付きます。例えば、0030002.ROR は表スペース ID が 3 で表 ID が 2 である、表の REORG 操作の状態ファイルです。
以下のリストには、オフライン表 REORG 操作の際にシステム管理スペース (SMS) 表スペースに作成される一時ファイルが示されています。
- .DTR - データ・シャドー・コピー・ファイル
- .LFR - ロング・フィールド・ファイル
- .LAR - ロング・フィールド割り振りファイル
- .RLB - LOB データ・ファイル
- .RBA - LOB 割り振りファイル
- .BMR - マルチディメンション・クラスタリング (MDC) 表のブロック・オブジェクト・ファイル
以下は、索引 REORG 操作の際に作成される一時ファイルです。
以下のリストには、ソート・フェーズの際に、システム TEMPORARY 表スペースに作成される一時ファイルが示されています。
- .TDA - データ・ファイル
- .TIX - 索引ファイル
- .TLF - ロング・フィールド・ファイル
- .TLA - ロング・フィールド割り振りファイル
- .TLB - LOB ファイル
- .TBA - LOB 割り振りファイル
- .TBM - ブロック・オブジェクト・ファイル
再編成処理に関連するファイルは、システムから手動で除去しないでください。