Talend 如何在工作之间共享tHashInput?

Talend 如何在工作之间共享tHashInput?,talend,Talend,我想给tHashInput提供大量数据。我想在subbobs中使用Hash,以便在主作业中实现一些模块化。我知道如何使用上下文变量共享简单数据,但我想知道如何共享此对象以将其用作tHashOutput。或者也许有另一种方法 有什么想法吗?tHash致力于在作业中共享数据。要在子作业之间共享数据,应使用TBUFFEROUT/TBUFFERINTPUT。正如garpitmzn指出的那样,tHash组件是作业的私有组件,因此不能在作业之间共享 要在作业之间共享数据,可以使用tBuffer组件将数据移回

我想给tHashInput提供大量数据。我想在subbobs中使用Hash,以便在主作业中实现一些模块化。我知道如何使用上下文变量共享简单数据,但我想知道如何共享此对象以将其用作tHashOutput。或者也许有另一种方法


有什么想法吗?

tHash致力于在作业中共享数据。要在子作业之间共享数据,应使用TBUFFEROUT/TBUFFERINTPUT。

正如garpitmzn指出的那样,tHash组件是作业的私有组件,因此不能在作业之间共享

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

如果性能是一个问题,您可以尝试使用内存中的数据库,例如临时保存数据


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

我相信一定有办法。缓冲区不是我想要的,因为散列中包含的数据是巨大的。我只需要对象引用。如果数据量很大,您可以使用平面文件跨子对象共享数据,或者您的要求是仅使用tHash?我需要使用哈希,因为我必须以最短的数据访问时间进行密集计算,并且我必须多次访问数据。所以,我在寻找极限性能。tBuffer非常慢。我试图通过tHash实现的是性能。最后,我使用了一个大任务,tHashOutput和tHashInputs到处重复。关于您使用内存数据库的建议,听起来很有趣。但我认为这属于另一个问题