Streamオペレータ定義では、ErrorLimit属性を使用して、Streamオペレータ ジョブが終了するまでにエラー テーブルに格納できるおおよそのレコード数を指定できます。 この数値が概数であるのは、StreamオペレータからTeradata Databaseに一度に複数のデータ行が送信されるからです。 エラー制限値を超過したことを示すメッセージをTeradata PTが処理するまでに、ErrorLimitに指定された数を超えるレコード数がエラー テーブルにロードされる可能性があります。
Streamオペレータは、正常に処理できないデータ行に遭遇すると、エラー テーブルに行を作成します。 このようなエラーは、制限に達するまでエラー テーブルに追加されます。 これらのオプションを適用先となるAPPLY文のDML文の直後に指定して、StreamオペレータによるDML文のエラーの取り扱いを制御します。
エラー制限は、制限に達したときのロード タスクの段階に応じてオペレータ インスタンスごとまたはオペレータごとに適用されます。詳細については、エラー制限値の影響を参照してください。
方策
ErrorLimit値の設定時には、以下の点を考慮してください。
- ErrorLimitは、エラーでジョブを終了させるのではなく、エラーが発生してもジョブを続行させることができるので有用です。 ただし、集積されたエラーの数が多すぎて処理に時間がかかることがないように、ジョブが完了したら集積されたエラーを手動でクリーンアップする必要があります。
- 発生するエラーの多くが不正なデータによるものです。 エラー制限値を非常に高い設定で維持する必要がある場合は、データの改善方法を検討すると役に立つ場合があります。
- 値は、経験を踏まえ、ジョブの実行方法に基づいて設定する必要があります。 実際の設定は、ジョブで処理されるデータの量に基づく必要があります。
詳細な説明と必要な構文については、<Teradata Parallel Transporterリファレンス、B035-2436>のStreamオペレータに関する章を参照してください。