17.10 - その他の手法 - MultiLoad

Teradata® MultiLoadリファレンス

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

ここで取り上げたTeradata MultiLoad例は、すぐにジョブ スクリプトを作成してTeradata MultiLoadを実行できるように、単純で直接的な内容となっています。次の表に、Teradata MultiLoadのオプションや代替機能(一部のみ)と、その詳細な説明が記載されている参照先を示します。

Teradata MultiLoadの代替機能
代替機能 説明
メインフレーム接続クライアント システムの使用 Teradata MultiLoadの例は、UNIXまたはWindows OSをワークステーション接続クライアント システム上で使用していることを前提としています。メインフレーム接続クライアント システム上でz/OSを使用して例を実行するためには、ユーティリティを起動する前に、標準的なz/OS JCL制御文(DD)を使用して、Teradata MultiLoadデータ セットまたはファイルを割り当ておよび作成します。メインフレーム接続クライアント システムでのTeradata MultiLoadの起動の詳細については、Teradata MultiLoadの起動を参照してください。
FastLoadユーティリティの使用 Teradata MultiLoadの例では、最も単純なTeradata MultiLoadジョブ(空の表へのデータのロード)を取り上げています。FastLoadユーティリティを使用して同じタスクを実行した場合、Teradata MultiLoadよりも迅速にジョブを実行できますが、FastLoadを使用できるのは空の表に限定されています。FastLoadは、既存の表に含まれているデータ行の挿入、更新、および削除をサポートしていません。このようなタスクの場合は、Teradata MultiLoadを使用します。
挿入、更新、および削除の各操作の実行 新しいテーブルにデータをロードするのではなく、既存のテーブルに追加の行を挿入する、または特定の行を更新または削除する場合は、以下を実行することにより、同じTeradata MultiLoad例を使用します。
  • Teradata MultiLoadのジョブ スクリプトからCREATE TABLE文を削除する
  • BEGIN MLOADコマンドで、適切にフォーマットされた既存の表を指定する
  • Teradata MultiLoadのジョブ スクリプトで、DML LABELコマンドの後に、適切なTeradata SQLのINSERT文、UPDATE文、またはDELETE文を指定する

Teradata MultiLoadには、個々の入力レコードを一致させるだけではなく、選択した行を1つのDELETE句で削除する機能も用意されています。詳細については、 インポート タスク削除タスクを参照してください。また、 Teradata MultiLoadコマンドで説明されているINSERT、UPDATE、およびDELETEの各コマンドも参照してください。

各種入力ファイル形式の使用 Teradata MultiLoadの例(insert.inputの入力データ ソースの形式はTEXTであり、IMPORTコマンドによって指定されます。Teradata MultiLoadでは、FASTLOAD、BINARY、TEXT、UNFORMAT、およびVARTEXTの各形式の入力データ ソース ファイルもサポートされます。サポートされている入力ファイル形式については、Teradata MultiLoadコマンドIMPORTコマンドを参照してください。
INMODルーチンの使 このTeradata MultiLoad例では、ユーティリティは、指定されたソース ファイル(insert.input)から直接入力データ レコードを読み込んでいます。また、Teradata MultiLoadから呼び出し可能なINMODルーチンを作成して、入力レコードを取得することもできます。例えば、INMODルーチンを使って以下のことができます。
  • ファイルからレコードを読み込んで前処理をするか、他のデータベース システムからデータを読み込みます。
  • データ レコードを生成または検証するか、データ レコード フィールドを変換します。

この場合は、IMPORTコマンドのオプション指定であるINMOD modulenameを使用して、INMODルーチンの名前を指定します。INMODルーチンの使用の詳細については、INMODおよび通知出口ルーチンの使用方法およびTeradata MultiLoadコマンドで説明されているIMPORTコマンドを参照してください。