- 再作成の対象となるAMPがTable Rebuild実行中にオフラインかオンラインかにかかわらず、同じ クラスタ内の他のすべてのAMPはオンライン状態でなければなりません。他のクラスタ内のAMPは、オフラインであっても問題ありません。
- スパース マップ(またはシステム内のすべてのAMPのサブセットのみを含む連続マップ)を使用するテーブルは、必ずしもシステムのすべてのAMPに分散されるわけではありません。再作成用に指定されたテーブルが、REBUILDコマンドで指定されたAMP上に存在しない場合、テーブル再作成によって次のメッセージが発行されます。
Unable to rebuild table tablename due to table not in rebuilt AMP
連続マップとスパース マップの詳細については、<Teradata Vantage™ データベース設計、B035-1094>を参照してください。 Teradata Databaseでは、一部のファイル システム エラーについて、影響を受ける特定のデータ サブテーブルやインデックス サブテーブル、またはデータ サブテーブルやインデックス サブテーブルの行の連続した範囲(「領域」)を識別することができます。 その場合、Teradata Databaseでは、影響を受けるサブテーブルまたは領域だけをダウンとマークします。 これにより、ダウンしているサブテーブルまたは行にはアクセスする必要がないトランザクションを、データベースのクラッシュや再始動を伴わずに実行できるため、システムのパフォーマンスと可用性が向上します。
通常の再作成プロセスでは、ダウンしている領域に関する情報がテーブル ヘッダーから削除されます。
Table Rebuildのバックグラウンドでの実行
LOG INTO logdbase.logtblオプションを指定すると、Table Rebuildはバックグラウンドで実行します。複数のテーブル再作成操作をバックグラウンドとフォアグラウンド(対話モード)の両方で同時に実行できます。バックグラウンドの再作成の完了メッセージが、システム コンソール、およびLOG INTOオプションで指定したユーザー定義のテーブルに送られます。
LOG INTOオプションで指定されるテーブルは、あらかじめ次のように作成済みでなければなりません。
CREATE SET TABLE logDB.LogTbl, FALLBACK ( MsgDate CHAR(8), /* format: 'yy/mm/dd' */ MsgTime CHAR(8), /* format: 'hh:mm:ss' */ MsgAMP CHAR(6), /* format: 'nnnn' */ MsgCode CHAR(1), /* see below */ MsgText VARCHAR(600) CHARACTER SET UNICODE) /* message text */ PRIMARY INDEX (MsgDate, MsgTime);
列 | 内容 |
---|---|
MsgDateおよびMsgTime | メッセージが生成された時点のシステムの日付と時刻。これらの列が、ログ テーブルの非固有プライマリ インデックスとなります。 |
MsgAMP | 再作成を実行するAMPの4桁のvproc番号。 |
MsgCode | 再作成メッセージのタイプを示す単一文字のコード。下記参照。 |
MsgText | 再作成メッセージのテキスト。 |
MsgCodeは、以下の値のうちのいずれかです。
値 | 意味 |
---|---|
‘ ’ | 通常のメッセージ |
‘D’ | データベース再作成のメッセージ |
‘E’ | エラー メッセージ |
‘J’ | テーブル再作成のメッセージ(ジャーナル) |
‘N’ | テーブル再作成のメッセージ(非フォールバック テーブル) |
‘R’ | テーブル再作成のメッセージ(回復に使用するテーブル) |
‘S’ | 再作成操作の始動/再始動 |
テーブル レベルのメッセージには、データベース名は含まれていません。正しく識別するため、レポートには'D'クラスのすべてのメッセージが含まれていなければならず、日付および時刻の順番に並んでいることが必要です。