我正在尝试使用Talend实现文件夹中文件的列合并。(文件是本地的)
示例: - 文件夹中有4个文件。 (也可能有' n'文件数量)
每个文件都有一列有100个值。
因此,在合并之后,输出文件将具有4或者' n'其中包含100条记录的列数。
是否可以使用Talend组件以这种方式合并?
在tmap中尝试了2个文件,输出记录成倍增加(第一个文件中的记录*第二个文件中的记录)。
任何帮助都将不胜感激。
感谢。
答案 0 :(得分:0)
您必须确定如何连接不同文件中的数据。 如果每个文件的行号N必须与其他文件的行号N匹配,则必须在每个文件上设置序列,并加入序列以获得结果。小心,你完全依赖于每个文件中的数据顺序。
然后你就可以完成这份工作:
tFileInputdelimited_1 --> tMap_1 --->{tMap_5
tFileInputdelimited_2 --> tMap_2 --->{tMap_5
tFileInputdelimited_3 --> tMap_3 --->{tMap_5
tFileInputdelimited_4 --> tMap_4 --->{tMap_5
在1到4的tMaps中,将输入复制到输出,并在输出中添加“sequence”列(数据类型整数),并使用Numeric.sequence("IDENTIFIER1",1,1)
填充它。然后输出中有2列:您的数据和唯一序列。
小心为每个源使用不同的标识符。
然后在tMap_5中,只需加入不同的序列,然后获取inputColumn。