如何在 Pentaho Data Integration (Kettle) 中合并两个文件

Posted

技术标签:

【中文标题】如何在 Pentaho Data Integration (Kettle) 中合并两个文件【英文标题】:How can I merge two files in Pentaho Data Integration (Kettle) 【发布时间】:2014-04-07 08:46:24 【问题描述】:

我正在使用 Pentaho Data Integration (Kettle),我有一个问题。

我有两个输入文件 file1.txtfile2.txt 具有相同的标题:

file1.txt

NAME;AGE
alberto;22
angela;22
madelaine;23

file2.txt

NAME;AGE
carlos;56
fernando;30
ana;16

我想将两个文件合并为一个,files_together.txt

NAME;AGE
alberto;22
angela;22
madelaine;23
carlos;56
fernando;30
ana;16

我已经尝试了所有(我认为)但我不知道该怎么做。我一直在 Google、Youtube 中搜索...没有肯定匹配。

非常感谢。

【问题讨论】:

问题已解决。只需将每个文件的输出作为最后一个文件的输入即可解决。 你应该对你自己的问题发布一个官方答案。 【参考方案1】:

回答;只需将要合并的每个文件的输出作为最后一个文件的输入即可。

【讨论】:

【参考方案2】:

我个人发现“附加流”更有用,因为它将流保持在一起。通过将两个输入指向一个输出,它们可以并行运行,因此结果将是交错的,具体取决于各种因素。使用 Append Stream 将为您提供 file1 的结果,然后在输出中为您提供 file2 的结果。

【讨论】:

【参考方案3】:

您必须执行“选择值”步骤。字段名称必须相同。

【讨论】:

【参考方案4】:

我正在尝试使用 .csv 文件进行类似的操作。尝试了你的建议,但它对我不起作用。许多其他博客说“最好使用 Excel 脚本,然后使用 Pentaho 数据集成 (Kettle)。”这不是真的。

您可以使用转换流类别下的“追加流”步骤。它需要两个输入合并,它为您提供预期的合并文件。您也可以通过此步骤将更多数量的文件相互合并。

【讨论】:

以上是关于如何在 Pentaho Data Integration (Kettle) 中合并两个文件的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Pentaho Data Integration 的 table_output 步骤填充表格?

如何在 SQL/PostgreSQL/MySQL 中将“65→67→69”更改为“J7,G2,P9”?还是使用 Pentaho Data Integration (Spoon) 中的拆分字段/值映射器

Pentaho Data Integration (Kettle) 简介

如何在 Carte 上运行的 Pentaho Kettle Job 中为数据库日志连接名称使用变量?

使用 Pentaho Kettle 实现 SCD Type 2 (Pentaho Data Integration 5.2)

Pentaho data integration(kettle) 在Mac上启动不了