Informatica中的源限定符转换

Informatica中的源限定符转换是一个活动且连接的转换。在创建映射时,这是Power Center Designer自动生成的默认转换。

此Informatica源限定符转换将源数据类型转换为本地数据类型。在实际应用中,您可以使用此源限定符转换来连接多个源、编写自定义查询、过滤行或选择唯一记录。

对于这个源限定符转换示例,我们将使用下面显示的数据(Employee表)。

以及Department表。

目标表是源限定符。如您所见,它是一个空表。

配置Informatica中的源限定符转换

在开始配置源限定符转换之前,请先提供管理员控制台凭据连接到存储库服务。

提示:在这里,您需要提供在安装服务器时指定的管理员控制台用户名和密码。

为Informatica源限定符转换创建源定义

导航到Analyzer并定义您的源。正如我们所说的,我们使用SQL Server数据库中的Employee和Department表作为我们的Informatica源定义。请参考Database了解源定义的创建。

Source Qualifier Transformation in Informatica 4

创建目标定义

请导航到Target Designer来定义目标。在此Informatica源限定符转换示例中,我们使用现有的SQL表(SourceQualifier)作为目标定义。您可以参考Create Target table using Definition来了解创建目标定义的过程。

创建映射

要为源限定符转换创建新映射,请导航到菜单栏的“Mappings”菜单并选择“Create..”选项。这将打开如下图所示的“Mapping Name”窗口。您必须为此映射(m_Source_Qualifier)写入一个唯一的名称,然后单击“OK”按钮。

在Informatica中创建源限定符转换

将Employee和Department从Sources文件夹拖放到映射设计器。一旦拖动源,Power Center Designer将自动为您创建源限定符转换(默认转换)。

Source Qualifier Transformation 7

我将删除Department Table的源限定符。

接下来,我们将Employee源限定符的Department列。这是添加两个表的一种方法。

Source Qualifier Transformation 9

我将删除SQ_Employee(Employee源限定符)。

创建Informatica源限定符转换

要显式创建源限定符,请导航到菜单栏中的“Transformation”菜单。接下来,选择“Create..”选项将打开如下图所示的“Create Transformation”窗口。

请从下拉列表中选择Source Qualifier Transformation,为该转换提供唯一的名称(SQ_EmployeeDetails),然后单击“Create”按钮。

Source Qualifier Transformation in Informatica 10

这将打开如下图所示的窗口。单击OK以选择Department表和Employee表。

现在您可以看到之前看到的同一张图片。

Source Qualifier Transformation 12

双击Informatica源限定符转换以查看和修改属性。下图显示了“Transformation”选项卡中可用的属性列表。

  • Select Transformation:默认情况下,它将选择您选择(或单击)的转换。
  • Rename:此按钮帮助您重命名源限定符转换名称。
  • Description:使用此位置提供此转换的有效描述。

下图显示了“Ports”选项卡中可用的选项。

  • Port Name:可用列名的列表。使用“New column”按钮添加新列,使用剪刀按钮删除不需要的列。在这里,我们将删除DeptID列,因为它是一个重复列。
  • I:输入列。
  • O:这里,打勾的列是Informatica源限定符转换的输出列。如果您取消勾选任何列,则该列将无法加载到目标表中。

在Properties下,我们有:

  • SQL Query:使用此属性编写自定义查询。此查询将替换它生成的默认查询。
  • User Defined Join:使用此属性连接多个数据源。
  • Filter:此属性用于过滤选定的行。它等于SQL或任何数据库中的Where Clause
  • Number of Sorted Ports:这用于对数据进行排序。类似于Order By Clause
  • Tracing Level:指定您希望如何跟踪(详细)。
  • Select Distinct:此属性用于选择Distinct(唯一记录)。类似于SQL DISTINCT
  • Pre SQL:使用此属性在Integration Service启动前在源上运行命令。
  • Post SQL:使用此属性在Integration Service结束后在源上运行命令。

我将使用User Defined Join属性来连接Employee表和Department表。

正如您所看到的,我们正在使用以下条件。您可以参考SQL Joins文章来理解条件,或参考Joiner Transformation来理解连接概念。

接下来,将目标定义(SourceQualifier)从Targets文件夹拖放到映射设计器。接下来,将源限定符转换与目标定义连接。请使用Autolink..选项进行连接。

在关闭映射之前,让我们通过转到“映射”菜单栏并选择“验证”选项来保存和验证映射。

Source Qualifier Transformation 18

在Informatica工作流中创建源限定符转换

完成映射创建后,我们需要为其创建工作流。Power Center Workflow Manager提供了两种创建工作流的方法。

在此示例中,我们将手动创建工作流。为此,请导航到“Workflows”菜单并选择“Create”选项。这将打开如下图所示的“Create Workflow”窗口。请为此工作流(wf_Source_Qualifier)提供一个唯一的名称,并保留默认设置。

创建完工作流后,下一步是为我们的映射创建会话任务。

创建Informatica源限定符转换会话

有两种类型的会话

在此示例中,我们创建了一个可重用会话,并将其命名为s_EmployeeDept_fromSQL_ToSQL。请链接Start Task和Session Task。接下来,导航到“Workflows”菜单并选择“Validate”选项来验证工作流。

Source Qualifier Transformation in Informatica 22

从上图可以看出,源限定符转换工作流是有效的。现在,我将启动工作流。为此,请导航到“Workflows”菜单,然后选择“Start Workflow”选项。

让我们打开SQL Server来检查我们是否成功使用了源限定符转换执行了连接。