Pentaho Kettle 的架构在哪里?

Posted

技术标签:

【中文标题】Pentaho Kettle 的架构在哪里?【英文标题】:Where is Pentaho Kettle's architecture? 【发布时间】:2009-10-15 17:23:33 【问题描述】:

在哪里可以找到 Pentaho Kettle 架构?我正在寻找一个简短的 wiki、设计文档、博客文章,以及任何可以很好地概述事物如何工作的东西。这个问题不是针对特定的“如何”入门指南,而是针对技术和架构的良好观点。

我的具体问题是:

    步骤之间的数据如何流动?似乎一切都在记忆中 - 我说得对吗? 以上关于不同转换的说法是否正确? 收集步骤是如何实施的? 使用它有什么具体的性能指南吗? ftp 任务是否可靠且高效? 还有其他“注意事项”吗?

【问题讨论】:

【参考方案1】:

见this PDF。

【讨论】:

pdf 链接已关闭【参考方案2】:
    步骤之间的数据如何流动?似乎一切都在 记忆——我说得对吗?

数据流是基于行的。对于转换,每一步都会产生一个“元组”或带有字段的行。每个字段都是一对数据和一个元数据。每一步都有输入和输出。 Step 从输入中获取行,修改行并将行发送到输出。在大多数情况下,所有信息都在内存中。但。 Steps 以流方式(如 jdbc 或其他方式)读取数据 - 因此通常在内存中只有流中的一部分数据。

    以上关于不同转换的说法是否正确?

有“工作”概念和“转型”概念。上面写的所有内容大部分都适用于转换。大多数情况下 - 意味着转换可以包含非常不同的步骤,其中一些 - 如收集步骤 - 可以尝试从流中收集所有数据。作业 - 是一种执行一些不遵循“流式传输”概念的操作的方法 - 例如成功发送电子邮件、从网络加载一些文件、逐个执行不同的转换。

    如何实施收集步骤?

它只取决于特定的步骤。通常如上所述 - 收集步骤可能会尝试从流中收集所有数据 - 这样做 - 可能是 OutOfMemory 异常的原因。如果数据太大 - 考虑用不同的数据处理方法替换“收集”步骤(例如使用不收集所有数据的步骤)。

    使用它有什么具体的性能指南吗?

很多。取决于步骤转换,包括使用的数据源。我会尝试谈论确切的场景而不是一般准则。

    ftp 任务是否可靠且高效?

据我所知,ftp 由 EdtFTP 实现支持,并且该步骤可能存在一些问题,例如 - 某些参数未保存,或者 http-ftp 代理不工作或其他。我会说 Kettle 总体上是可靠且高性能的 - 但对于一些不常用的场景 - 可能并非如此。

    还有其他“注意事项”吗?

我会说“做”是在开始大量使用工具之前了解它。正如本次讨论中提到的 - 有一些关于 Kettle/Pentaho 数据集成的文献,您可以尝试在特定网站上搜索它。

Pentaho Data Integration/Kettle 的优势之一是社区相对较大,您可以询问具体方面。

http://forums.pentaho.com/

https://help.pentaho.com/Documentation

【讨论】:

以上是关于Pentaho Kettle 的架构在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

使用 StAX / Kettle (Pentaho) 读取 XML 文件

在 Kettle/Spoon/Pentaho 中循环

在 pentaho (kettle) 中合并属性

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

在 Pentaho Kettle 中应用 Pivot

Pentaho Kettle 连接到 Hadoop 集群