17.10 - AMPの処理 - MultiLoad

Teradata® MultiLoadリファレンス

Product
MultiLoad
Release Number
17.10
Release Date
2021年6月
Content Type
プログラミング リファレンス
Publication ID
B035-2409-061K-JPN
Language
日本語 (日本)

このセクションでは、ダウン状態の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のタスクは実行されないか、終了されます。

アプリケーション フェーズ中に、ディスクのデータが破損する程度までAMPがダウンしている場合には、影響を受けた表を手動で復元する必要があります。

1つ以上のターゲット テーブルが非フォールバックであり、ダウン状態のAMPが1つ以上ある場合、Teradata MultiLoadのタスクは終了され、すべてのAMPのバックアップが終了するまでタスクを再始動できません。

アプリケーション フェーズ中に入出力エラーによってターゲット表が破壊された場合も、Teradata MultiLoadは終了します。

非参加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のタスクを続行することはできません。ターゲット表は使用不能とみなされるため、アーカイブから回復する必要があります。