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 文件