1

如何使用 Datastage 从一个平面文件中选择所需的列到另一个平面文件。我有一个源文件,其中包含两个名为 NAME 和 ROLL_NO 的字段。现在,我只需要使用 Datastage 为我的目标平面文件选择 NAME 字段,而无需在其间使用任何阶段。谢谢。

4

1 回答 1

1

这可以通过仅将 NAME 列放在源阶段输出列中来完成。我做了一个例子来测试这个:

首先,我创建了一个 InputFile.txt 文件,其中包含以下记录:

Caitlyn Stark,1
Eddard Stark,2
Hodor,3
Bran Stark,4

使用 Datastage 8.5 服务器作业:

我创建了两个顺序文件阶段,分别命名为 InputStage 和 OutputStage。在 InputStage 的“输出”选项卡的“列”子选项卡中,仅定义第一列“名称”。如果您在第二个文件中不需要 ROLL_NO,则不要将其从第一个文件中拉出。

输出文件如下所示:

Caitlyn Stark
Eddard Stark
Hodor
Bran Stark

需要注意的是,Datastage 是一个 ETL 程序,即“Extract-Transform-Load”。支持直接提取和加载,但您将有严重的限制。例如,如果您想提取 ROLL_NO 字段,而不是 NAME 字段,则必须包含一个 Transformer Stage。Transformer 阶段是 ETL 三明治的核心,在大多数情况下,您应该计划为每个服务器作业至少使用一个。

转换器阶段很重要,因为它允许您从源重新映射到目标。您可以更改列顺序、排除列或基于变量、硬编码文本等生成新列。

于 2013-03-20T20:59:19.470 回答