Informatica 中的连接器转换及示例

什么是 Joiner 转换?

Joiner 转换是一个活动的连接转换,它提供了在 Informatica 中创建连接的选项。使用 Joiner 转换创建的连接类似于数据库中的连接。Joiner 转换的优点是可以为异构系统(不同数据库)创建连接。

在 Joiner 转换中,我们将使用两个源进行连接。这两个源称为

  • 主源
  • 明细源

在 Joiner 转换的属性中,您可以选择哪个数据源为主源,哪个源为明细源。

在执行期间,主源会被缓存到内存中进行连接。因此,建议选择记录数较少的数据源为主源。

使用 Joiner 转换可以创建以下连接

  1. 主外部连接
    在主外部连接中,连接会返回明细源的所有记录,并且只返回主源的匹配行。
  2. 明细外部连接
    在明细外部连接中,只从明细源返回匹配行,并返回主源的所有行。
  3. 全外部连接
    在全外部连接中,会返回两个源的所有记录。主外部连接和明细外部连接等同于 SQL 中的左外部连接。
  4. 普通连接

在普通连接中,只从两个源返回匹配的行。

在此示例中,我们将使用 Joiner 转换连接 emp 和 dept 表

步骤 1) 使用以下脚本在数据库中创建一个新的目标表 EMP_DEPTNAME,并将表导入 Informatica 目标。

下载上面的 emp_deptname.sql 文件

步骤 2) 创建一个新的映射,并导入源表“EMP”和“DEPT”以及我们在上一步中创建的目标表

Joiner Transformation in Informatica

步骤 3) 从转换菜单中,选择创建选项。

  1. 选择 Joiner 转换
  2. 输入转换名称“jnr_emp_dept”
  3. 选择创建选项。

Joiner Transformation in Informatica

步骤 4) 将两个 源限定符 的所有列拖放到 Joiner 转换中

Joiner Transformation in Informatica

步骤 5) 双击 Joiner 转换,然后在编辑转换窗口中

  1. 选择条件选项卡
  2. 单击添加新条件图标
  3. 在主列和明细列列表中选择 deptno

Joiner Transformation in Informatica

步骤 6) 然后在同一个窗口中

  1. 选择属性选项卡
  2. 选择普通连接作为连接类型
  3. 选择“确定”按钮

Joiner Transformation in Informatica

为了优化性能,我们将主源分配给记录数较少的源表管道。要执行此任务 –

步骤 7) 双击 Joiner 转换以打开编辑属性窗口,然后

  1. 选择端口选项卡
  2. 选择某个源的任何列,您想将其设为主源
  3. 选择确定

Joiner Transformation in Informatica

步骤 8) 将 Joiner 转换中的相关列链接到目标表

Joiner Transformation in Informatica

现在保存映射,并在创建其会话和工作流后执行它。连接将使用 Informatica Joiner 创建,并且相关的详细信息将从两个表中获取。