このセクションでは、ダウン状態のAMPおよび非参加AMPの処理方法について説明します。
障害AMP
Teradata MultiLoadタスクに対する障害AMPの影響は、次の項目に左右されます。
- クラスタ内の、論理的あるいは物理的にダウンしているAMPの数
- AMPがダウン状態に陥った時のTeradata MultiLoadタスクの動作フェーズ
- ターゲット表がフォールバックであるか非フォールバックであるか
ターゲット テーブルがすべてフォールバックであり、ダウン状態のAMPが1つだけの場合、クラスタ内で論理的または物理的にダウンしているAMPが1つだけである限り、Teradata MultiLoadのタスクは引き続き実行されます。以下の場合、障害AMPは適用フェーズに関与しません。
- Teradata MultiLoadタスクがアプリケーション フェーズに入る前にAMPがダウンし、AMPCHECKパラメータがNONEに設定されている場合。
- 適用フェーズ中に特定のI/Oエラーが発生した
ターゲット テーブルがすべてフォールバックであり、ダウン状態のAMPが2つ以上ある場合、クラスタ内で2つ以上のAMPが論理的または物理的にダウンしていると、Teradata MultiLoadのタスクは実行されないか、終了されます。
1つ以上のターゲット テーブルが非フォールバックであり、ダウン状態のAMPが1つ以上ある場合、Teradata MultiLoadのタスクは終了され、すべてのAMPのバックアップが終了するまでタスクを再始動できません。
非参加AMP
AMPがTeradata MultiLoadタスクに非参加となる場合は3通りあります。
- 取得フェーズの終了時またはアプリケーション フェーズの開始時にAMPがダウンしたとき、BEGIN MLOADコマンドにAMPCHECK NONEオプションが指定されていると、関連のAMPは非参加になります。
Teradata MultiLoadは取得フェーズ後は動作しないため、AMPが非参加となるのは、ターゲット テーブルがフォールバック保護付きとして定義されている場合のみです。AMPCHECK APPLYおよびALLオプションを指定すると、このような状況でのAMPの非参加を防止できます。
- アプリケーション フェーズ中に所定のTeradata MultiLoadテーブルで入出力エラーが発生すると、入出力回復操作によりTeradata MultiLoadタスクが停止したときに関連AMPが非参加になります。
- アプリケーション フェーズ中にHead/Disk Assembly(HDA)の障害が発生すると、関連のAMPは非参加になります。ただし、ディスクが交換されて、ディスク コピー ユーティリティと表再作成ユーティリティが実行されると復帰します。
実質的には、Teradata MultiLoadは非参加AMPをダウン状態のAMPとして扱います。したがって、次の状態のAMPがクラスタ内に2つ以上存在する場合、Teradata MultiLoadは実行されません。
- ダウン
- オフライン
- 非参加
クラスタ内の2つ以上のAMPがアプリケーション フェーズの途中で非参加となった場合、Teradata MultiLoadのタスクを続行することはできません。ターゲット表は使用不能とみなされるため、アーカイブから回復する必要があります。