在Informatica工作流中在运行时更改数据源连接

时间:2012-09-05 19:33:08

标签: informatica-powercenter informatica

我有一个映射,我需要能够针对多个源模式(具有相同的结构)运行,一次一个模式。鉴于模式的数量,我宁愿不为每个模式设置会话以指定特定的映射连接,因为这将需要在添加新模式时添加新会话。

是否可以设置工作流,以便在运行时定义会话中的映射的数据源连接(或作为某种类型的参数传递)?

2 个答案:

答案 0 :(得分:1)

  1. 配置工作流程或会话以使用参数文件。
  2. 在会话设置中,将“硬编码”源连接(选项使用对象)更改为使用连接变量并输入带有{{1的变量名称前缀(例如$DBConnection)。
  3. 使用以下内容在适当的位置创建参数文件:

    $DBConnectionSource01
    [Global]

答案 1 :(得分:0)

我相信您正在寻找的是使用参数文件和一些shell脚本来解决(假设您的服务器具有某种Unix风格)。

将工作流设置为使用参数文件运行。在参数文件全局部分中为数据库连接(使用$ DBConnection启动)声明一个特殊参数。更改会话属性以使用该参数。

您需要为每个源db / schema创建适当的Relational连接对象。

现在,编写一些shell程序来动态更改该参数文件,并将参数文件中参数的值替换为您想要的新值。

运行时的典型事件序列应如下所示 -

  1. 每当您要为其他源运行该工作流/会话/映射时,请使用适当的参数启动脚本以实现Informatica参数文件中的更改。

  2. 运行Shell脚本以启动给定数据库源的作业。脚本运行应更改参数文件

  3. 中的$ DBConnection参数
  4. 使用参数文件通过pmcmd启动工作流程。