Informatica 常用组件Lookup缓存之一 概述

   可以配置查找转换以高速缓存查找表。PowerCenter 将在处理高速缓存查找转换中的第一个数据行时在存储器中建立高速缓存。它将根据您在转换或会话特性中配置的数量来分配高速缓存区内存。PowerCenter 会将条件值存储在索引高速缓存区中,而将输出值存储到数据高速缓存区。PowerCenter 将查询进入转换的每行的高速缓存。

默认情况下,PowerCenter 还将在 $PMCacheDir 中创建高速缓存文件。如果数据在存储器高速缓存区中放不下,PowerCenter 会将溢出值存储在高速缓存文件中。会话完成后,PowerCenter 将释放高速缓存区内存并删除高速缓存文件,除非您将查找转换配置为使用永久性高速缓存。

如果使用平面文件查找,PowerCenter 将总是高速缓存查找源。如果为已排序输入配置平面文件查找,而未分组条件列,PowerCenter 将无法高速缓存查找。如果对列进行了分组,但尚未排序,PowerCenter 将按您没有配置排序输入的方式来处理查找。

配置查找高速缓存时,您可以指定以下任意选项:

  • 永久高速缓存。可以保存查找高速缓存文件并在下次 PowerCenter 处理配置使用高速缓存的"查找"转换时重新使用。
  • 从源重新高速缓存。如果永久高速缓存与查找表不同步,则可以配置"查找"转换以重建查找高速缓存。
  • 静态高速缓存。可以为任意查找源配置静态或只读高速缓存。默认情况下,PowerCenter 创建静态高速缓存。它会为进入转换的行高速缓存查找文件或表并在高速缓存中查找值。条件为真时,PowerCenter 将从查找高速缓存返回值。PowerCenter 处理查找转换时不会更新高速缓存。
  • 动态高速缓存。如果要高速缓存目标表并在高速缓存和目标中插入新行或更新现有行,则可创建"查找"转换以使用动态高速缓存。PowerCenter 在查找高速缓存中动态地插入或更新数据并传递数据至目标表。不能使用带有平面文件查找的高速缓存。
  • 共享高速缓存。您可以在多个转换之间共享查找高速缓存。您可以在同一映射中的转换之间共享未命名高速缓存。您可以在相同或不同映射的转换之间共享已命名高速缓存。

        没有为高速缓存配置查找转换时,PowerCenter 将为每个输入行查询查找表。无论您是否高速缓存了查找表,"查找"查询和处理的结果都相同。但是,使用查找高速缓存可以提高会话性能。源表较大时,可以通过高速缓存查找表来最优化性能。

高速缓存比较


不高速缓存

静态高速缓存

动态高速缓存

您不能插入或更新高速缓存。

您不能插入或更新高速缓存。

传递行至目标时,可以在高速缓存中插入或更新行。

不能使用平面文件查找。

可以使用关系或平面文件查找。

只可以使用关系查找。

条件为真时,PowerCenter Server 将从查找表或高速缓存返回值。

条件不为真时,PowerCenter Server 将对已连接的转换返回默认值,而对未连接的转换返回 NULL。

条件为真时,PowerCenter Server 将从查找表或高速缓存返回值。

条件不为真时,PowerCenter Server 将对已连接的转换返回默认值,而对未连接的转换返回 NULL。

条件为真时,PowerCenter Server 将根据行的类型在高速缓存中更新行或保留高速缓存不更改。这表明行处于高速缓存和目标表中。可以向目标表传递已更新行。

条件不为真时,PowerCenter Server 将根据行的类型将行插入高速缓存或保留高速缓存不更改。这表明行不处于高速缓存或目标表中。可以向目标表传递已插入行。

时间: 2024-11-29 08:29:33

Informatica 常用组件Lookup缓存之一 概述的相关文章

Informatica 常用组件Lookup缓存之二 使用永久查找高速缓存

可以将"查找"转换配置为使用非永久或永久高速缓存.基于"查找高速缓存永久"属性的会话成功后,PowerCenter 将保存或删除查找高速缓存文件. 如果查找表在会话间没有更改,则可以将"查找"转换配置为使用永久查找高速缓存.PowerCenter 在会话期间保存并重新使用高速缓存文件,消除了读取查找表所需的时间. 使用非永久高速缓存 默认情况下,在"查找"转换中启用高速缓存时,PowerCenter 将使用非永久高速缓存.在会

Informatica 常用组件Lookup缓存之三 重建查找高速缓存

如果您认为查找源在 PowerCenter 上次构建高速缓存时已更改,则可指示 PowerCenter 重建查找高速缓存. 重建高速缓存时,PowerCenter 会覆盖现有永久高速缓存文件而创建新的高速缓存文件.PowerCenter 重建高速缓存时会向会话日志写入消息. 当映射包含一个查找转换或映射包含共享了高速缓存的多个目标载入顺序组中的查找转换时,可以重建高速缓存.当动态查找与同一映射中的静态查找共享高速缓存时,不必重建高速缓存. 某些情况下,即使未选择重新高速缓存查找源,PowerCe

Informatica 常用组件Lookup之一 概述

转换类型:被动.已连接/未连接 在映射中使用查找转换以从平面文件或关系表.视图或同义词查找数据.您可以从 PowerCenter Client 和 PowerCenter Server 均连接至的任何平面文件或关系数据库中导入查找定义.您可以在一个映射中使用多个查找转换. PowerCenter 基于转换中的查找端口来查询查找源.它基于查找条件将查找转换端口值与查找源列值相比较.将查找结果传递至其它转换和目标. 您可以使用查找转换执行多项任务,包括: 获取相关值.例如,源包括员工标识,但您需要在

Informatica 常用组件Lookup之五 转换属性

查找转换的属性标识数据库源.PowerCenter 如何处理转换,以及它如何处理高速缓存和多项匹配. 创建映射时,为每个查找转换指定属性.创建会话时,您可在会话属性中覆盖某些属性,如每个转换的索引和数据高速缓存大小. 选项 查找类型 说明 Lookup SQL Override 关系 覆盖默认 SQL 语句以查询查找表. 指定希望 PowerCenter 用以查询查找值的 SQL 语句.仅在已启用查找高速缓存的情况下使用. Lookup Table Name 关系 指定转换将查找和高速缓存其值的

Informatica 常用组件Lookup之六 查询

PowerCenter 基于您在查找转换中配置的端口和属性来查询查找.当第一行输入到查找转换时,PowerCenter 运行一个默认的 SQL 语句.如果使用关系查找,您可以在"查找 SQL 覆盖"属性中自定义默认查询. 默认查找查询         默认查找查询包含以下语句:  SELECT.SELECT 语句包括映射中的所有查找端口.您可以通过使用查找 SQL 覆盖属性生成 SQL 来查看 SELECT 语句.切勿在默认 SQL 语句中添加或删除任何列. ORDER BY.ORDE

Informatica 常用组件Lookup之四 查找组件

在映射中配置查找转换时,请定义以下组件: 查找源 端口 属性 条件 元数据扩展 查找源         您可以使用平面文件或关系表作为查找源.创建查找转换时,您可以从以下位置导入查找源: 资料库中的任何关系源或目标定义 资料库中的任何平面文件源或目标定义 PowerCenter Server 和 PowerCenter Client 机器都可以连接到的任何表或文件 查找表可以是单个表,您也可以使用查找 SQL 覆盖以将相同数据库中的多个表联接起来.PowerCenter 为所有传入查找转换的行,

Informatica 常用组件Lookup之九 配置未连接的查找转换

在映射中,未连接的查找转换与管道是分开的.您可以使用 :LKP 引用限定符编写表达式以调用其它转换中的查找.未连接查找的常用用法包括: 测试表达式中某个查找的结果 基于查找结果过滤行 基于查找的结果将行标记为更新,如更新缓慢更改的维表 在一个映射中多次调用相同的查找         配置未连接的查找转换时,请完成以下步骤:  添加输入端口. 添加查找条件. 指定一个返回值. 调用其它转换中的查找. 步骤 1. 添加输入端口 为 :LKP 表达式中的每个参数创建一个输入端口.您需要在查找转换中为每

Informatica 常用组件Lookup之十 创建查找转换

在 Mapping Designer 中选择"转换-创建".选择查找转换.输入转换名称.查找转换的命名惯例是 LKP_TransformationName.单击"确定". 在"选择查找表"对话框中,您可以选择以下选项: 选择现有表或文件定义. 选择从关系表或文件导入定义. 跳过以创建手动定义. 为每个需要定义的查找条件定义输入端口. 对于未连接查找转换,请为需要从查找返回的值创建一个返回端口. 为需要传递到其它转换的值定义输出端口. 对于使用动态

Informatica 常用组件Lookup之二 已连接和未连接的查找

可以配置一个已连接的查找转换,以从映射管道中直接接收输入:您也可以配置一个未连接的查找转换,以从其它转换的表达式结果中接收输入. 已连接的查找 未连接的查找 直接从管道接收输入值. 从其它转换的 :LKP 表达式结果接收输入值. 可以使用动态或静态高速缓存. 可以使用静态高速缓存. 高速缓存包括映射中用到的所有查找列(即,包括在查找条件中的查找源列,以及作为输出端口链接至其它转换的查找源列). 高速缓存包括查找条件中的所有查找/输出端口和查找/返回端口. 可以从相同的行返回多列,或插入到动态查找