我是一名Informatica开发人员。 我在informatica中有以下映射:
Original Mapping :
AS400(DB2SQ)->EXP->RTR->AGG1->MPLT->TGT1(SQL Server) Pipeline 1.
| |->AGG2->TGT2(SQL Server)
| |
| |->TGT3(SQL Server)
->AGG3->EXP->TGT4(FlatFile) Pipeline 2.
大量记录正在通过管道1。我被要求优化流程。以下是我的建议。
这是我的优化映射现在的外观:
Optimized Mapping(What i thought) :
AS400(DB2SQ)->EXP->RTR->MPLT->TGT1(SQL Server) Pipeline 1.
| |->TGT2(SQL Server)
|
->AGG3->EXP->TGT4(FlatFile) Pipeline 2.
只是为了研究源性能优化,我替换了所有目标的session属性,而是将其写入文件。我想检查我是否仍然可以优化我的资源。
但是令我惊讶的是,当我同时执行两个会话(在单独的工作流程中,一个接一个地执行)时,我发现优化会话的SQ吞吐量比原始会话慢得多。
经过优化的解决方案中的所有操作都是完全相同的,就像我在删除2个聚合器和其中一个目标之前复制了原始映射/会话一样。
请注意:我正在开发的环境已启用版本控制,这有什么用吗?
我试图交叉检查这个倍数,但找不到答案。
答案 0 :(得分:0)
如果您仔细查看会话登录详细信息,则可以更好地识别它。还可以在源dB中运行查询并检查时间,这还可以。您还可以通过使用push调整源端的性能下优化(即源端下推优化)。但是在此之前,请检查您的源dB,如果一切都很好,并且不需要花费很多时间。您还可以修改优化查询并查看性能。
如果仍然无法解决问题,则可以在sq中进行会话分区并检查性能。