CLUSTERキーワードを使用する場合には、同じデータベース、ストアド プロシージャ、またはテーブルのためのディクショナリのアーカイブを維持する必要があります。 クラスタ レベルのアーカイブでは、大きなテーブルに対するアーカイブおよび回復のパフォーマンスが向上し、非フォールバック テーブルの個々のAMPへの復元が容易になります。
以下のものを含む場合、完全なクラスタ アーカイブは、すべてのデータベース、ストアド プロシージャ、およびテーブルを復元できます。
- データベース、テーブル、またはストアド プロシージャのディクショナリ アーカイブ
- クラスタ レベルのアーカイブ一式
- 個々のAMPレベルのアーカイブ一式(クラスタ レベルのアーカイブ時にオフラインであったAMPの非フォールバック テーブルのアーカイブ)
クラスタ アーカイブのテーブルが再定義される可能性がある場合には、必ずディクショナリ アーカイブを作成してください。
テーブルが再定義されない場合でも、ディクショナリ アーカイブを1回だけ生成する必要がありますが、既存のディクショナリ アーカイブが破損した場合に備えて、ディクショナリ アーカイブは定期的に作成してください。
数日かけてクラスタレベルのアーカイブを作成しおよびこのアーカイブ内のテーブルの定義を変更した場合には、変更したテーブルを対象とした全AMPレベルのアーカイブを作成する必要があります。そうしないと、アーカイブ ファイル間でテーブルの構造が一致しなくなります。
ジャーナル テーブルをアーカイブする場合には、以前のチェックポイントで作成された保存サブテーブルをアーカイブしてください。 したがって、そのジャーナル テーブルを使用しているデータ テーブルに対してロックを行なう必要はありません。 Teradata Databaseは、保存されたジャーナル サブテーブルを内部的にロックして、サブテーブルの同時削除を防止します。
CLUSTERキーワード使用上の規則は、次のとおりです。
- データ テーブルのアーカイブに対してのみ使用できます。
- ディクショナリのアーカイブは、クラスタ アーカイブの前に作成しなければなりません。
- クラスタ内のAMPがオフライン状態の場合には、そのAMPがオンライン状態に復帰した後、そのAMPから非フォールバック テーブルをアーカイブします。
- ユーティリティ ロックは、クラスタ レベルで設定(または解除)されます。
ディクショナリのアーカイブには、アーカイブ対象のさまざまなオブジェクトのためのTeradata Databaseのディクショナリ テーブルに格納されているデータが含まれます。 次の手順を実行し、クラスタ アーカイブのテーブル データとディクショナリ アーカイブのディクショナリ定義の整合性を保証します。
- 定義が変更されることのないテーブルに対してのみ、クラスタ レベルのアーカイブを実行する。
- クラスタ アーカイブの直前に、Teradata ARCロックを解除せずにディクショナリ アーカイブを作成する。 この時、ARCロックを解除せずに、続けてすべてのAMPをカバーする一連のクラスタ レベルのアーカイブ リクエストを実行する。
データベースDBCは、クラスタ レベルのアーカイブ操作の対象とはなりません。 ただし、DBC (ALL)を指定することは可能です。 この場合、データベースDBCはTeradata ARCにより、自動的に除外されます。