如何在作业之间共享tHashInput?

时间:2014-05-12 09:02:12

标签: talend

我想用大量数据提供tHashInput。我想在子作业中使用Hash在我的主作业中有一些模块化。我知道如何使用上下文变量共享简单数据,但我想知道如何共享此对象以将其用作tHashOutput。或许还有另一种方法可以做到这一点。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

tHash适用于在作业中共享数据。要跨子作业共享数据,您应该使用tBufferOutput / tBufferInput。

答案 1 :(得分:0)

正如garpitmzn所指出的那样,tHash组件是作业私有的,因此无法在整个作业中共享。

要在作业之间共享数据,您可以使用tBuffer组件将数据移回父作业,或者当然将数据写入平面文件或数据库。

如果需要考虑性能,可以尝试使用内存数据库(如HSQLDB)暂时保存数据。

或者,您可以将所有作业合并到一个作业中,假设它不会超过作业的最大组件数量。这有很多明显的缺点,意味着你的工作复杂性变得非常高,但它可以让你继续使用你的tHash组件。