所以,我有一些关于PDI和我的转换流程的问题。基于我的跨流,我获得了超过GC开销限制的错误,并且我已经在寻找解决方案,比如为spoon.bat、-Xms、-Xmx2g增加内存,但是它不起作用。所以我想换个解决方案,我想也许我应该改变流程(索特合并使用了很多内存,因为这个错误)。或者,如果你们对我的问题有另一个解决方案,我真的需要这个。
贝娄是我的横流照片。谢谢#抱歉
发布于 2018-06-08 11:14:13
通过在公式步骤中包含这个逻辑,您可以跳过整个拆分和合并操作。
使用IF(condition;A;B),,其中条件是在筛选行步骤中定义的测试,A和B是从各个公式步骤中进行的现有计算。这样,每一行都能得到正确的计算,并且不必加入流。
发布于 2018-06-05 11:27:06
确实需要合并,而不是虚拟流或附加流来追加行吗?
实际上,合并行将执行一个联接。如果一个流中的键与另一个流中的键匹配(或者更糟糕的是,如果没有键,从而导致交叉连接),那么就会造成基数方面的噩梦。
更糟糕的是,合并联接将无法完成,因为从筛选器行中的任一数据流中都有输入行,从而在内存中保留了一个庞大的数据集。
如果合并实际上是您所需要的,那么您应该仔细分析结果集的基数,但还应该在合并连接之前添加两个排序行,这必须按照连接键对每个流进行排序,并且还可以使数据流解耦,从而允许合并连接一次运行整个流,而不会在转换中造成潜在的死锁。
https://stackoverflow.com/questions/50693825
复制相似问题