首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >超过PDI - GC开销限制

超过PDI - GC开销限制
EN

Stack Overflow用户
提问于 2018-06-05 06:53:06
回答 2查看 1.3K关注 0票数 0

所以,我有一些关于PDI和我的转换流程的问题。基于我的跨流,我获得了超过GC开销限制的错误,并且我已经在寻找解决方案,比如为spoon.bat、-Xms、-Xmx2g增加内存,但是它不起作用。所以我想换个解决方案,我想也许我应该改变流程(索特合并使用了很多内存,因为这个错误)。或者,如果你们对我的问题有另一个解决方案,我真的需要这个。

贝娄是我的横流照片。谢谢#抱歉

我的转变流程

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-08 11:14:13

通过在公式步骤中包含这个逻辑,您可以跳过整个拆分和合并操作。

使用IF(condition;A;B),,其中条件是在筛选行步骤中定义的测试,A和B是从各个公式步骤中进行的现有计算。这样,每一行都能得到正确的计算,并且不必加入流。

票数 0
EN

Stack Overflow用户

发布于 2018-06-05 11:27:06

确实需要合并,而不是虚拟流或附加流来追加行吗?

实际上,合并行将执行一个联接。如果一个流中的键与另一个流中的键匹配(或者更糟糕的是,如果没有键,从而导致交叉连接),那么就会造成基数方面的噩梦。

更糟糕的是,合并联接将无法完成,因为从筛选器行中的任一数据流中都有输入行,从而在内存中保留了一个庞大的数据集。

如果合并实际上是您所需要的,那么您应该仔细分析结果集的基数,但还应该在合并连接之前添加两个排序行,这必须按照连接键对每个流进行排序,并且还可以使数据流解耦,从而允许合并连接一次运行整个流,而不会在转换中造成潜在的死锁。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50693825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档