Informatica关于在一个映射中加入源限定符和多个目标

时间:2018-11-27 12:01:32

标签: informatica informatica-powercenter

您好,亲爱的堆栈溢出向导,

已附上相关映射的屏幕截图。源表来自同一数据库。我尝试使用单个Source Qualifier转换加入表。我还将所有三个目标放在一个映射中。

这项工作吗?如果不是,是否可以使用Source Qualifier在不同情况下进行联接,并且一个映射中是否可以有多个目标?

我的老师给了我0分,我应该使用一个细木工和三个单独的映射(之前没有被教导,也没有学过有关细木工的知识。这是非常基础的课程)。

非常感谢您!

祝你好运,Cam The Mapping in question

1 个答案:

答案 0 :(得分:0)

它不起作用,因为数据完整性可能会失败。这些表之间有外键。首先,您需要将数据上传到家庭表,然后再上传到客户,然后再上传到订单。

最好创建三个单独的映射,然后在Workflow Manager中顺序连接它们。您还可以在一个映射中创建三个单独的数据加载,但是您需要定义目标加载组顺序(单击工具栏中的映射)以指定Integration Service(IS)应按哪个顺序加载它们。而且,实际上,您不需要加入任何内容。

我看不到使用Source Qualifier来连接表,甚至没有过滤或排序数据的任何问题,但是通常的良好做法是在SQ之后使用Joiners(或SQ >> FILTER >> JOINER)。使用Joiner,您一次只能加入两个来源。

这是Informatica关于Joiner Transformation的说法:
使用Joiner转换来连接来自位于不同位置或文件系统中的两个相关异构源的源数据。您也可以从同一来源连接数据。

关于源代码限定符:
加入来自同一源数据库的数据。通过将源链接到一个Source Qualifier转换,可以将两个或多个具有主键-外键关系的表联接起来。

加入源数据
使用一种Source Qualifier转换来联接来自多个关系表的数据。这些表必须可以从同一实例或数据库服务器访问。当映射使用相关的关系源时,可以将两个源合并到一个“源限定符”转换中。在会话期间,源数据库在将数据传递到Integration Service之前执行联接。索引源表时,这可以提高性能。提示:将Joiner转换用于异构源并连接平面文件。

相关问题