Informatica 路由器转换:多条件示例

什么是路由器转换?

路由器转换是一种活动的连接转换,它类似于用于过滤源数据的过滤器转换。

除了过滤之外,还可以收集映射中被丢弃的数据(过滤掉的数据),并且可以应用多个过滤条件来获取多组数据。

例如,在过滤部门编号(deptno)=10 的数据时,我们还可以获取部门编号(deptno)不等于10 的记录。因此,路由器转换会提供多个输出组,每个输出组可以有自己的过滤条件。

此外,还有一个默认组。此默认组包含不满足任何组条件的记录集。例如,如果您为过滤条件分别创建了两个组:部门编号(deptno)=10 和部门(dept)=20,那么不包含部门编号10 和20 的记录将被放入此默认组。简而言之,被过滤器组拒绝的数据将被此默认组收集,有时需要存储这些被拒绝的数据。在这种情况下,默认输出组会很有用。

为了支持多个过滤条件,路由器转换提供了组选项。

  • 有一个默认输入组,用于接收输入数据。
  • 还有一个默认输出组,用于提供未通过任何过滤条件的所有数据。
  • 对于每个过滤条件,路由器转换中都会创建一个输出组。您可以将不同的目标连接到这些不同的组。

创建路由器转换

步骤 1) 创建一个包含源“EMP”和目标“EMP_TARGET”的映射。

Router Transformation in Informatica

步骤 2) 然后在映射中

  1. 选择“转换”菜单。
  2. 选择创建选项。

Router Transformation in Informatica

步骤 3) 在“创建转换”窗口中:

  1. 选择“路由器转换”。
  2. 为转换输入名称“rtr_deptno_10”。
  3. 选择“创建”选项

步骤 4) 路由器转换将在映射中创建,请在窗口中选择“完成”选项。

Router Transformation in Informatica

步骤 5) 将所有列从源限定符拖放到路由器转换。

Router Transformation in Informatica

步骤 6) 双击路由器转换,然后在它的转换属性中:

  1. 选择“组”选项卡。
  2. 输入组名称“deptno_20”。
  3. 点击“组过滤器条件”。

Router Transformation in Informatica

步骤 7) 在表达式编辑器中,输入过滤条件 deptno=20,然后选择“确定”按钮。

Router Transformation in Informatica

步骤 8) 在组窗口中选择“确定”按钮。

Router Transformation in Informatica

步骤 9) 将路由器转换的“deptno_20”组的端口连接到目标表的端口。

Router Transformation in Informatica

现在,当您执行此映射时,过滤后的记录将被加载到目标表中。