Informatica 中的路由器转换就像 IF 条件或 CASE 语句。它将检查给定的条件,并根据条件结果,将输出发送到适当的目标路径。这与筛选器转换类似,当我们需要测试多个条件时,可以使用路由器转换。
Informatica 中的路由器转换在实际应用中非常有用。例如,如果我们有一个情况,希望将薪水大于 40000 的员工记录存储在一个表中,而将薪水小于 40000 的员工记录存储在另一个表中,那么我们可以使用此路由器转换根据指定的表达式拆分数据。
对于这个 Informatica 路由器转换示例,我们将使用以下数据。我们的任务是根据条件拆分下面显示的数据,并将它们存储在多个数据库表中。

配置 Informatica 中的路由器转换
在我们开始配置路由器转换之前,首先连接到 Informatica 存储库服务。为了连接到存储库服务,我们需要提供 管理员控制台 凭据。因此,请提供正确的用户名和密码,然后单击连接按钮,如下图所示。
提示:在这里,您必须提供在安装服务器时指定的管理员用户名和密码。

在 Informatica 源定义中创建路由器转换
成功连接后,请导航到 源分析器 并定义您的源。在此路由器转换示例中,我们将使用 SQL Server 数据库中的 [Products] 表作为我们的源定义。请参考 数据库源 来了解创建源定义涉及的步骤。

创建目标定义
请导航到 目标设计器 并定义目标。在此 Informatica 路由器转换示例中,我们正在使用已创建的 SQL 表(Router1、Router2 和 Router3)作为我们的目标定义。请参考 使用源定义创建目标表 来了解创建目标定义涉及的步骤。

在 Informatica 映射中创建路由器转换
为了创建新映射,请导航到菜单栏中的 映射 菜单,然后选择“创建...”选项。在这里,您必须为此映射(m_Router_Transformation)编写一个唯一的名称,然后单击“确定”按钮。

接下来,将 [Products] 源定义从“源”文件夹拖放到映射设计器。拖放源后,PowerCenter 设计器将自动创建一个名为源限定符的默认转换。
创建 Informatica 中的路由器转换
为了创建路由器转换,请导航到菜单栏中的“转换”菜单,然后选择“创建...”选项,如下图所示。

单击“创建...”选项后,将打开“创建转换”窗口,如下图所示。请从下拉列表中选择“路由器转换”,为该转换指定一个唯一的名称(rtr_Sales),然后单击“创建”按钮。

单击“创建”按钮后,路由器转换将添加到映射设计器。为了路由数据,路由器转换需要一些数据,因此请通过拖放所需字段将源定义连接到转换。

从上图,您可以看到我们的输入数据。让我们定义输出组,因此双击 Informatica 路由器转换以提供路由条件。从下图,您可以看到转换选项卡中可用的属性列表。
- 选择转换:默认情况下,它将选择您单击的转换。
- 重命名:此按钮将帮助您将路由器转换重命名为更有意义的名称。
- 设为可重用:如果您选中此选项,则此转换将成为可重用转换。
- 描述:请为此转换提供有效的描述。

下图将显示 Informatica 路由器转换端口选项卡中可用选项的列表。
- 端口名称:可用列名的列表。通过单击“新建列”按钮,您可以添加新列;通过单击剪刀按钮,您可以删除不需要的列。
- I:在此部分下选中复选框的列是输入列。
- O:在此部分下选中复选框的列是路由器转换的输出列。如果您取消选中任何列,那么该列将无法加载到目标表中。

在“组”选项卡中,我们需要定义要使用的组名称和条件。从下图,您可以看到我们创建了两个组(LEAST SALES 和 MEDIUM SALES)。
提示:Informatica 中的路由器转换将自动创建默认组(即 DEFAULT 1)。不属于上述组的记录将存储在此组中。

让我们通过单击箭头按钮(如下所示)为第一个组(Least Sales)提供表达式或条件。这将打开表达式编辑器来编写自定义表达式。
在这里,我们想要销售金额小于 400 的记录,因此我们编写如下所示的表达式(SalesAmount < 400)。

接下来,通过单击箭头按钮并编写条件(SalesAmount >= 400 AND SalesAmount < 2000),为第二个组(Medium Sales)提供表达式或条件。

所有剩余的行将作为默认输出,它们将存储在 DEFAULT 1 组中(Sales Amount > 2000)。

完成属性配置后,单击“确定”关闭 Informatica 路由器转换窗口。
接下来,将目标定义(Router 1、Router2 和 Router3)从“目标”文件夹拖放到映射设计器,如下图所示。

接下来,请将 LeastSales(输出组 1)连接到第一个目标定义(Router 1),将 MediumSales(输出组 2)连接到 Router 2,将 Default 1(默认组)连接到 Router 3。

在我们关闭映射之前,让我们通过转到“映射”菜单栏并选择“验证”选项来验证它。
创建 Informatica 路由器转换工作流
完成映射创建后,我们必须为它创建工作流。PowerCenter 工作流管理器提供了两种创建工作流的方法。
在此路由器转换示例中,我们将手动创建工作流。为了创建新工作流,请导航到“工作流”菜单并选择“创建”选项。
这将打开“创建工作流”窗口,如下图所示。请提供唯一的名称(wf_Router_Transformation),并保留默认设置。

创建工作流后,我们的下一步是为我们的映射创建会话任务。
注意:我们强烈建议参考 工作流 文章来了解手动创建工作流涉及的步骤。
创建会话
有两种类型的会话
对于这个 Informatica 路由器转换示例,我们将创建一个非可重用的会话。请导航到“任务”菜单并选择“创建”选项以打开“创建任务”窗口。在这里,您必须选择“会话”作为任务类型(默认),并为会话输入一个唯一的名称(S_Router_Transformation)。
单击“创建”按钮后,将打开一个名为“映射”的新窗口。在这里,您必须选择要与此会话关联的映射。从下图,您可以看到我们正在选择之前(在第 3 步)创建的映射(m_Router_Transformation)。

双击会话任务进行配置。尽管我们必须配置源、目标和一些常用属性,但我们不解释任何内容。我们强烈建议访问 会话 文章以了解属性。
从下图,您可以看到 Informatica 工作流中的路由器转换是有效的。现在,让我们通过导航到“工作流”菜单并选择“启动工作流”选项来启动工作流。

选择“启动工作流”选项后,将打开 PowerCenter 工作流监视器来监视工作流。从下图,您可以看到我们的工作流已成功执行。

让我们打开 SQL Server Management Studio 来显示 [Router 1] 的结果(即 Least Sales 组的输出)。

让我们在 SQL Server 的 [Router 2] 表中查看结果。下图将显示 Medium Sales 组的输出。

让我们在 SQL Server 的 [Router 3] 表中查看结果。下图将显示默认组的输出。请参考 筛选器 文章。

评论已关闭。