我试图在talend中复制abinitio作业。Talend:将来自两个有条件的subjobs的数据合并为单个文件
我在作业中有两个起点(有条件的),我正在使用tjava IF触发器使任何一个子作业执行。
现在,因为,无论是子作业将执行的一个,我愿意把只是一个tFileInputDelimited和收敛两个子作业数据流之一。
我尝试过使用tUnite,但通过这样做,两个工作正在结合。单个subjob不能有两个触发起点。我在这种情况下得到错误。
一种方法是使用中间文件,然后再次读取它。但是这不会是abinitio工作的复制。很难说服。
输入数据可能非常大,所以我不确定tmap的连接是否是一个好方法。
有人可以提出一些更好的方法,请建议。
输出流将受内存驱动。你认为我们会在大文件的情况下使用相同的,或者说数据库卸载?基本上我试图理解流量合并的想法。如果假设我在同一个作业中有teradatainput和MySQLinput,并且基于某个上下文变量,它们中的任何一个都会执行,比如说模式是相同的。我可以只有一个输出文件和合并流? – NishantM
Outputstream可以是FileOutputStream,它的句柄将存储在内存中,数据将被写入光盘。没有必要使用保存内存中所有数据的ByteArrayOutputStream。 – Kriegel