在本文中,我们将通过一个例子讲解如何在Informatica中使用Sorter转换去除重复项。在这个例子中,我们将使用Adventure Works DW 2014中提供的Fact Internet Sales表数据。
从上图可以看出,我们有60398条记录,其中包含许多重复项。我们的任务是选择不同的记录或使用Informatica中的sorter转换去除重复项。
在Informatica中使用Sorter转换去除重复项
在开始使用sorter去除重复项之前,请连接到Informatica存储库服务。为此,我们需要提供Admin Console凭据。因此,请提供正确的用户名和密码,然后点击“连接”按钮。
提示:此处请输入安装服务器时指定的管理员用户名和密码。

步骤 1:创建源定义
成功连接后,请导航到Source Analyzer并定义我们的源。在此示例中,我们将使用已创建的SQL表(Internet Sales)作为我们的源定义。请参考数据库源以了解创建源定义所涉及的步骤。

步骤 2:创建目标定义
请导航到Target Designer并定义目标。在此示例中,我们将使用已创建的SQL表(Fact Internet Sales)作为我们的目标定义。请参考使用源定义创建目标表以了解创建目标定义所涉及的步骤。

步骤3:在Informatica映射中使用Sorter转换去除重复项
要创建新的映射,请导航到菜单栏中的“映射”菜单,然后选择“创建..”选项。这将打开“映射名称”窗口。在这里,您需要为该映射输入一个唯一的名称,然后单击“确定”按钮。
提示:请参阅 Mapping 文章以了解创建 Mapping 所涉及的步骤。

接下来,将[Internet Sales]源定义从“源”文件夹拖放到映射设计器,并创建一个sorter转换。sorter转换需要一些数据来去除重复项。因此,我们必须使用“自动链接..”选项将源定义连接到转换。
提示:请参考Sorter转换文章以了解配置Sorter转换所涉及的步骤。

双击Sorter转换以配置属性。从下图可以看出,您可以看到“属性”选项卡中可用属性的列表。在此示例中,我们要去除重复记录,因此请选中“Distinct”属性。
提示:这将作为SQL SELECT DISTINCT语句。

接下来,如果您观察“端口”选项卡,Sorter转换正在按升序对所有输入列进行排序。请记住,您在这里无需执行任何操作。
单击“确定”按钮以完成属性配置。

接下来,将[Duplicate Sorter Transformation in Informatica]目标定义从“目标”文件夹拖放到映射设计器,并将Sorter转换与目标定义连接起来。请使用“自动链接..”选项将它们连接起来。

在关闭映射之前,让我们通过转到“映射”菜单栏并选择“验证”选项来验证映射。
步骤 4:创建工作流
完成映射创建后,我们需要创建工作流以在Informatica中使用Sorter转换去除重复项。PowerCenter Workflow Manager提供了两种创建工作流的方法。
在此示例中,我们手动创建了工作流。创建工作流后,我们的下一步是创建会话。
我们强烈建议参考Workflow文章以了解手动创建工作流所涉及的步骤。
步骤4(a):创建会话
有两种类型的会话
- 非可重用会话任务:请参考Session文章。
- 可重用会话任务:请参考Reusable Session文章。
在本例中,我们将创建非可重用会话。要在Informatica中创建非可重用会话,请导航到“任务”菜单,然后选择“创建”选项以打开“创建任务”窗口。在这里,您必须选择“会话”作为任务类型(默认),并为会话输入一个唯一的名称。
单击“创建”按钮后,将打开一个名为“映射”的新窗口。在这里,我们必须选择要与此会话关联的映射。从下图可以看出,我们正在选择我们之前(在步骤3中)创建的映射。

尽管我们需要配置源、目标和一些通用属性,但在此我们不进行解释。请参考Session文章以了解这些属性。
从下图可以看出,名为“在Informatica工作流中使用Sorter转换去除重复项”的工作流是有效的。现在,让我们通过导航到“工作流”菜单并选择“启动工作流”选项来启动工作流。

选择“启动工作流”选项后,将打开PowerCenter Workflow Monitor以监控工作流。从下图可以看出,我们的工作流已成功执行。

让我们打开SQL Server Management Studio,检查是否已成功从Adventure Works DW去除重复项/将不同的记录传输到目标数据库。

从上图可以看出,总共有60398条记录,但只有158条是不同的记录。让我们通过在SQL中编写Distinct查询来查看相同的内容。

评论已关闭。