17.10 - エラー テーブルのアクセスと使用 - Parallel Transporter

Teradata® Parallel Transporter ユーザー ガイド

Product
Parallel Transporter
Release Number
17.10
Release Date
2021年6月
Content Type
ユーザー ガイド
Publication ID
B035-2445-061K-JPN
Language
日本語 (日本)
エラー テーブルは、Teradata PTジョブのLoad、ストリーム、Updateの各オペレータに対して自動的に生成され、データベースにデータを書き込む際に発生したデータベース エラーに関する情報が記録されます。エラー テーブルには、最初にジョブ ログに記録されたエラーに関するさらに詳細な情報が記録されます。エラー テーブルでは、エラーが次の2つのグループに分けられています。
  • ErrorTable1 (取得エラー テーブル) – 制約違反、不正なデータ、およびデータ変換エラーが報告されます。
  • ErrorTable2 (適用エラー テーブル) – 固有プライマリ インデックスの違反(重複行など)の原因となった行が記録されます。

エラー テーブルをサポートしているオペレータは以下のとおりです。

オペレータ 説明
Load 取得エラー テーブルと適用エラー テーブル(ErrorTable1とErrorTable2)を生成します。
エラー テーブルには、次のいずれかの方法で名前が付けられます。
  • 次のように、オペレータがターゲット テーブルに関連するテーブル名を自動的に付けます。
    • ErrorTable1の場合: TargetTableName_ET
    • Errortable2の場合: TargetTableName_UV
  • ErrorTable1属性とErrorTable2属性を使用してエラー テーブルに名前を付けます。
Update
Stream 取得エラー テーブル(ErrorTable)のみを生成します。これはErrorTable1に相当します。 Streamオペレータは、ジョブ スクリプト ユーザー ログオンに関連するデータベースにこのテーブルを配置します。
エラー テーブルには、次のいずれかの方法で名前が付けられます。
  • ErrorTable属性を使用してエラー テーブルに名前を付けます。

    ターゲット テーブルがあるデータベースとは別のデータベースにエラー テーブルを格納する場合は、次の形式で名前の前にデータベース名を付加することもできます。

    DatabaseName.ErrorTableName

    詳細については、<Teradata® Parallel Transporterリファレンス, B035-2436>でLoadオペレータおよびUpdateオペレータに関するセクションを参照してください。

  • ErrorTable属性に名前が指定されていない場合は、オペレータが自動的に次のような名前をエラー テーブルに付けます。M<yy><day>_<seconds>_<LSN>_ET
    説明
    • Mはデフォルトの接頭辞です。
    • <yy> は年の最後の2桁です。
    • <doy>は1年における日付です。
    • <seconds>は1日における秒数です。
    • <LSN>は論理セッション番号です。
    • ETは、"error table"(エラー テーブル)を意味するデフォルトの接尾辞です。
    このデフォルトのエラー テーブル名は、使用しないことをTeradata推奨します。 文字列が長いために、テーブルにアクセスする際にデータ入力エラーにつながる可能性があります。

エラー テーブルの内容と形式はオペレータごとに異なります。詳細については、Loadオペレータ エラーで始まるセクションを参照してください。

エラー テーブルに関する考慮事項は以下のとおりです。
  • ジョブでエラーが生成されなかった場合は、エラー テーブルが空になります。 空のエラー テーブルは、DropTable属性がNoに設定されている場合を除き、ジョブ終了時に自動的に削除されます。
  • エラーが生成されると、エラー テーブルは、ジョブの最後に保存されます。
  • 最初からジョブを再実行するためには、関連付けられているエラー テーブルの削除または名前変更を実行してください。実行しないと、エラー テーブルがすでに存在することを示すエラー メッセージが返されます。
  • 逆に、ジョブをステップまたはチェックポイントから再始動するには、エラー テーブルが存在している必要があります。 ジョブの再始動が不要であることが確実である場合を除いて、エラー テーブルは削除しないでください。
  • エラー テーブルに指定した名前を再利用するためには、BTEQユーティリティまたはDDLオペレータのDROP TABLE文を使用して、データベースからテーブルを削除してください。