多个 Pentaho 转换“变量?”

Posted

技术标签:

【中文标题】多个 Pentaho 转换“变量?”【英文标题】:Multiple Pentaho Transformations 'Variables?' 【发布时间】:2014-11-07 02:11:51 【问题描述】:

我正在使用 Pentaho 数据集成软件。

我目前正在将 Pentaho 作业作为 ETL 运行。我从多个地方 ETL 数据并将它们放入单个数据库表中。我 ETL 来自的所有地方的架构完全相同。因此,除了数据库连接和存储数据来源的单个“变量”之外,Pentaho 中的转换对于每一个都是完全相同的。所以我有一份工作,负责执行这些转换。

问题来了,当我想做出改变时。我每次都需要更改 6 个转换。我想做的,是以某种方式在 Pentaho 中设置一个变量,告诉它运行一个转换,6 次,使用不同的数据库连接,也许是一个变量。

这可能吗?

提前致谢。

【问题讨论】:

【参考方案1】:

如果我正确理解了您的问题,您需要使用单个 KTR 文件循环多个转换(假设只有一个数据库类型

PDI 为您提供了一个名为“将行复制到结果”的步骤,您可以在其中将数据库的凭据存储在多行中,并且对于 Job 的每次运行,它将使用不同的连接并多次运行转换(6在你的情况下)。

注意:我假设您只有一种数据库类型,例如: mysql 但使用不同的凭据。

希望这会有所帮助 :) 如果您需要,我很乐意为您提供示例代码。

【讨论】:

是的,我连接的数据库都是 mysql 并且完全相同的架构只是不同的主机/用户凭据。我会试试这个,让你知道。如果您确实有一些示例代码也会有所帮助。感谢您的帮助!【参考方案2】:

那么,您为什么不使用将主机/用户/密码作为变量传递的作业?这样,您的整个数据流将是通用的。

希望这个答案能引导你走向正确的方向!

【讨论】:

以上是关于多个 Pentaho 转换“变量?”的主要内容,如果未能解决你的问题,请参考以下文章

Pentaho - 拥有多个复制行以导致从结果中获取行为空

从结果集中获取行并在 Pentaho 数据集成中使用获取变量

Pentaho:水壶/勺子:插入后组合多个数据

Pentaho - 如何根据 Kettle 属性文件设置工作转换

Pentaho行变量

Pentaho 数据集成 setVariable 和 getVariable 问题