Informatica 中的会话属性:完整教程

会话属性是一组指令,指示 Informatica 如何以及何时将数据从源移动到目标。

会话属性是一项任务,就像我们在工作流管理器中创建的其他任务一样。您创建的任何会话都必须具有与之关联的映射。

一个会话一次只能有一个映射,一旦分配,就无法更改。要执行会话任务,必须将其添加到工作流中。

会话可以是可重用对象,也可以是不可重用对象。在任务开发人员中创建会话时,该会话可重用,但在工作流设计器中创建会话时,该会话不可重用。

可重复使用的会话可以添加到多个工作流中。

会话的属性

使用会话的属性,您可以配置会话的各种特征,如会话前和会话后 SQL 脚本、日志文件名和路径、内存属性等

您还可以在会话属性中覆盖映射属性。在本节中,我们将讨论会话的以下重要属性。

  • 将源行视为
  • 提交间隔
  • 会话日志文件属性
  • 试验载荷特性
  • 日志选项
  • 错误处理
  • 来源/Target 查看房源
  • 连接

步骤1) 在任务开发人员中打开我们在之前的教程中创建的会话“s_m_emp_emp_target”。

会话的属性

步骤2) Double 单击任务开发人员内的会话图标以打开编辑任务窗口。

会话的属性

步骤3) 在“编辑任务”窗口中单击属性选项卡。

会话的属性

步骤4) 在属性选项卡中,它将显示会话的属性

会话的属性

将源行视为属性

此属性允许您定义源数据如何影响目标表。例如,您可以定义应在目标中插入或删除源记录。

此房产有四种选择——

  • 插页
  • 更新
  • 删除
  • 数据驱动

将源行视为属性

  • 当此属性设置为 ,源数据将被标记为已插入。这意味着数据只会被插入。
  • 当属性设置为 更新,目标数据将被源数据更新。更新数据时需要在目标表中定义主键。
  • 当属性设置为 删除 目标中已存在的源数据将从目标表中删除。要执行此属性并应用更改,应在目标表中定义主键。
  • 将属性设置为 数据驱动,Informatica 检查标记了哪些源记录。如果在映射中将源记录标记为插入,则记录将插入到目标中。如果在映射中将记录标记为更新,则记录将在目标中更新。因此,在目标上执行什么操作取决于映射内部如何处理记录。

如何制作处理源行 – 删除

步骤1)

  1. 在会话任务的属性选项卡中,选择“将源行视为”中的“删除”选项
  2. 选择“确定”按钮

制作治疗源行 – 删除

步骤2) 要在目标表中定义主键,请打开 Informatica 设计器

  1. 打开目标设计器
  2. Double 点击“emp_target”表

制作治疗源行 – 删除

这将为我们的目标表打开一个“编辑表”。

步骤3) 在目标表的编辑窗口中

  1. 对于 EmpNo 列,从下拉菜单中选择键类型为“主键”,然后
  2. 选择“确定”按钮。

制作治疗源行 – 删除

步骤4) 保存 Informatica 中的更改并执行此映射的工作流。

当你执行此映射时, 目标中已经存在的源记录将被删除。

提交间隔 – 属性

此属性定义 Informatica 对目标表进行提交操作的时间间隔。

例如,如果您在目标表中插入 20,000 条记录,并且将提交间隔定义为 5,000,那么每在目标中插入 5,000 条记录后,就会执行一次提交操作。

提交间隔 - 属性

会话日志文件名称和会话日志文件目录

会话日志文件名称和会话日志文件目录

配置此属性以修改

  • 默认会话日志文件名和
  • 日志文件的路径

$PMSessionLogDir\ 是一个 Informatica 变量,在 Windows 中它指向以下默认位置“C:\Informatica\9.6.1\server\infa_shared\SessLogs”。

启用测试负载

使用此属性,您可以测试会话和映射。当您使用此功能并执行会话时,记录将从源中提取,但不会加载到目标中。因此,此功能有助于 测试 映射、参数文件的正确性、映射内部各种转换的功能。

如果启用此功能,则还有另一个属性 - 要测试的行数,此属性应配置为您想要从源中获取以进行测试加载的记录数。

启用测试负载

记忆属性

内存属性使我们能够灵活地微调分配给 Informatica 的内存,以实现性能优化。当存在高瓶颈且性能不佳时,您可以尝试使用内存属性来提高性能。

要配置内存属性,请单击编辑任务窗口的“配置对象”选项卡。它将打开另一个窗口,您可以在其中配置更改。

记忆属性

在此部分中,您可以配置内存属性。例如,默认缓冲区块大小、连续缓冲区长度等。对这些属性的更改将决定应为 Informatica 服务分配多少内存以供其运行。

记忆属性

日志选项

日志选项

在此属性部分,您可以配置会话的日志属性。您可以设置要为会话保存的日志数量以及会话日志文件的最大大小。

错误处理

错误处理

在本节中,您可以配置会话的错误属性。

运用 出现错误时停止 您可以配置会话在发生多少次错误后必须停止。

运用 覆盖跟踪 您可以覆盖映射跟踪级别。

您还可以配置会话遇到的各种错误的行为,例如存储过程错误、前后 SQL 错误等。

映射和来源/Target 查看房源

在会话的编辑任务窗口的映射选项卡中,您可以配置与映射及其源/目标和转换相关的属性。使用此部分属性,您可以覆盖源和目标的属性。对于源和目标,我们可以覆盖表名,我们可以应用表名前缀。在映射中,我们可以配置各种转换、源和目标的属性,除此之外,在此部分中我们还可以查看和覆盖这些属性。它就像一个可以查看所有这些属性的单一位置。

映射和来源/Target 查看房源

映射中的连接属性

使用此属性,您可以定义源和目标的数据库连接。

映射中的连接属性

源属性

在此部分中,您可以配置与映射源相关的属性。您可以为源配置前置和后置 SQL 脚本。

使用 SQL 查询属性,您可以覆盖源的 SQL。您还可以在此部分中覆盖源表名称。

源属性

Target 查看房源

在此部分,您可以配置目标的详细信息。您可以定义目标加载是否必须是批量加载或正常模式。

在批量加载中,由于加载期间数据库没有管理重做日志缓冲区,因此可以实现性能提升。

另一方面,正常加载与批量加载相比速度较慢,但​​在发生故障时可以恢复数据库。

您还可以定义属性以在填充目标表之前截断目标表。这意味着在目标中加载任何记录之前,目标表将被截断,然后执行加载。当我们为阶段加载创建映射时,此属性很有用。

我们还可以定义目标表前置 SQL 和后置 SQL。前置 SQL 是在目标表执行插入操作之前执行的 SQL 代码,而后置 SQL 代码将在目标表加载完成后执行。

Target 查看房源

会话任务的成功或失败

如果工作流中有多个会话,则可能会出现一个或多个会话失败的情况。在这种情况下,会出现一个问题:工作流的状态如何,因为您的工作流中很少有任务失败,也很少有任务成功。为了处理这种情况,Informatica 提供了在工作流中设置此特定于失败的属性的选项。要配置此类行为 -

步骤1) 打开我们之前创建的工作流“wkf_run_command”

会话任务的成功或失败

步骤2) Double 单击命令任务,这将打开编辑任务窗口

  1. 选择常规选项卡
  2. 选中属性“如果此任务失败,则父任务失败”复选框
  3. 选择“确定”按钮

会话任务的成功或失败

步骤3) Double 单击会话任务,这将打开编辑任务窗口

  1. 选择常规选项卡
  2. 选中属性“如果此任务失败,则父任务失败”复选框
  3. 选择“确定”按钮

会话任务的成功或失败

步骤4) 使用 ctrl+s 快捷键保存更改。

在进行上述更改后执行此工作流时,如果任何任务失败,工作流状态将为失败。因此,您可以识别在工作流执行期间某些任务失败了。