我已经通过一次查找将Truncate表更改为Insert和Update逻辑,查找缓存行数超过500万。更改为使用查询整个put的增量加载现在从2400减少到2(Trunc Load)< / p>
答案 0 :(得分:0)
查找中的数据非常大。看看你是否可以限制查找中的记录数量。 如果没有,假设您的源和目标数据库是异构的,而不是查找使用它作为源,然后使用joiner将其作为详细信息表连接。这样可以大大提高性能。
答案 1 :(得分:0)
会话开始很慢,因为它正在为查找构建巨大的缓存以开始加载数据。确保您只是在查找中提取比较所需的列以及输出所需的任何内容,例如PK列等。使用查找覆盖查询来调整性能,在这里您可以过滤数据以及拉动只需要什么,无论是列还是行。如果您的查找数据没有改变,请尝试使用持久缓存。
如果您可以选择在sql覆盖中加入数据,请尝试消除查找本身。这样你就可以将查询推送到数据库而不是为你完成工作的信息。
答案 2 :(得分:0)
您可以查看以下几点以提高效果 -
查找调优 - 通过将查找表与源表连接(如果它们位于同一个数据库中)来减少查找中的行数,或者应用某些过滤条件。确保在加入时使用PK / FK / Indexed列。同时从查找中删除所有不需要的列。
目标调整 - 确保在写入目标时,从目标中删除所有索引并在目标加载完成后创建索引。然后确保Informatica目标中提到的键列实际上在数据库级别中没有。
来源调整 - 由于你在这里没有太多改变所以我不希望有很多机会在这里改进。但请检查您的SQL是否使用某些索引等。