Informatica中调用源数据库的存储过程耗时过久

弹指神通 2013-10-16 11:16:55
小弟在做ETL的时候用了Informatica的Stored Procedure Transformation从源数据库的另外一张表中去查一些东西之后,根据查到的结果对ETL的某些字段进行修改。
目前遇到的问题是这个方法耗费的时间太多,因为每一条数据都需要调用存储过程到源表去查,几十万条数据差不多要一个多小时才能跑完。小弟也知道在Informatica Server上调用源库的存储过程肯定是十分消耗资源的,但是因为业务逻辑上的关系又必须要到源表去查这些数据。
敢问各位大侠可有什么建议?或者说能够降低时间消耗的方法?
拜谢!
...全文
797 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
graysun 2013-11-06
  • 打赏
  • 举报
回复
你是说做这个mapping花了2个小时?
graysun 2013-10-17
  • 打赏
  • 举报
回复
是的,这样比较耗时,主要原因是没条都要送给数据库,然后调用存储过程. 可以这样改一下不知道是否能接受 1. 将这些数据先插入数据库中 2. 修改一下存储过程,改为一个sql进行处理. 然后让powercenter一次调用存储过程,效率会大幅度提升
弹指神通 2013-10-17
  • 打赏
  • 举报
回复
。。做这个关系表的ETL花了将近两个小时。
引用 1 楼 graysun 的回复:
是的,这样比较耗时,主要原因是没条都要送给数据库,然后调用存储过程. 可以这样改一下不知道是否能接受 1. 将这些数据先插入数据库中 2. 修改一下存储过程,改为一个sql进行处理. 然后让powercenter一次调用存储过程,效率会大幅度提升
我建这个关系表的ETL花了两个小时。。。。
弹指神通 2013-10-17
  • 打赏
  • 举报
回复
多谢graysun, 我也这样想,先建一个保存这些关系的表,做完ETL之后直接从这个表中去取每个object的关系,而且进行增量更新的话时间也不会很多的吧。

246

社区成员

发帖
与我相关
我的任务
社区描述
讨论 Informatica 数据集成相关技术、数据隐私保护相关技术
社区管理员
  • 数据集成社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧