Datastage を使用して、あるフラット ファイルから別のフラット ファイルに目的の列を選択するにはどうすればよいですか。NAME と ROLL_NO という 2 つのフィールドを含むソース ファイルがあります。ここで、中間のステージを使用せずに、Datastage を使用してターゲット フラット ファイルに NAME フィールドのみを選択する必要があります。ありがとう。
1 に答える
これは、ソース ステージの出力列に NAME 列を配置するだけで実現できます。これをテストするために例を実行しました:
まず、次のレコードを含む InputFile.txt ファイルを作成しました。
Caitlyn Stark,1
Eddard Stark,2
Hodor,3
Bran Stark,4
Datastage 8.5 サーバー ジョブの使用:
InputStage と OutputStage という名前の 2 つの Sequential File ステージを作成しました。InputStage の [出力] タブにある [列] サブタブで、最初の列の [名前] のみを定義します。2 番目のファイルに ROLL_NO が必要ない場合は、最初のファイルから引き出さないでください。
出力ファイルは次のようになります。
Caitlyn Stark
Eddard Stark
Hodor
Bran Stark
Datastage は ETL プログラム、つまり「Extract-Transform-Load」であることに注意することが重要です。直接の抽出とロードはサポートされていますが、厳しい制限があります。たとえば、ROLL_NO フィールドをプルしたいが、NAME フィールドはプルしたくない場合は、Transformer ステージを含める必要があります。Transformer ステージは ETL サンドイッチの要であり、ほとんどの場合、サーバー ジョブごとに少なくとも 1 つ使用することを計画する必要があります。
Transformer ステージは、ソースから宛先への再マッピングを可能にするため、重要です。列の順序を変更したり、列を除外したり、変数やハードコードされたテキストなどに基づいて新しい列を生成したりできます。