Informatica Tuning调优3–Source

Informatica Tuning调优3–Source

3 6 月, 2016 阅读 591 字数 637 评论 0 喜欢 0

Source:

确认问题:

  • 查看Thread Statistics中,reader threads的使用时间多去其他两个threads。

 

解决方法:

如果源是关系型数据库:

  • 方法一:使用Filter,在SQ组件后加一个Filter并默认为FALSE(即没有任何数据会传输到下一个组件当中,即只有加载数据的过程),如果这个时候耗用时间没有大幅度下降,说明大部分时间花费在了source。
  • 方法二:通过直接加载的方式,去掉所有的Transformation。如果这个时候耗用时间没有大幅度下降,说明大部分时间花费在了source。(所以,我们强调先调TARGET再调SOURCE)
  • 方法三:直接将INFA生成的SQL复制出来在DB里面执行,看执行速度的差别。

 

其他:

优化QUERY:

  • 多张表:只用HINTS ,告诉数据库优化器走怎样一个路径。

注意:在使用HINTS的时候,在PowerCenter得到第一条数据前,会有一个比较长延迟得到应该设置optimizer hint尽快返回结果,而不是等到所有结果完整再返回。

  • 单张表:加入ORDER BY 或 GROUP BY 可能会有一定优化效果,比如:在加索引的时候。
  • 在源数据库的源表中添加索引也有一定的帮助。

 

使用条件FILTER(Source Qualifier):

  • 使用Source Qualifier中的SQL Override,在QUERY中添加WHERE字句过滤掉MAPPING中 不需要的字段,以减少数据通信。

 

使用TEMPDB在Sybase、SQL Server 来高性能

发表回复

蜀ICP备15005542号