【问题标题】:Create a Pentaho Transformation & Steps using Java使用 Java 创建 Pentaho 转换和步骤
【发布时间】:2015-09-22 10:34:46
【问题描述】:

我是 Pentaho/ETL 的新手,需要专家建议来完成我的任务。实际上,我们正在尝试将 Pentaho Steps/Jobs 与我们基于 Web 的平台集成。我们正在设计一个类似的界面,用户将在其中获取步骤列表,并可以选择任何步骤来创建转换。我们正在为所有 pentaho 步骤对话框开发一个外观相似的 HTML 界面,我们将以 JSON 格式将转换数据(包括步骤/跃点)发送到后端 API。后端 API 将解析 JSON 并为 Kettle 核心引擎创建 steps / transMeta。 谁能帮助我如何在 Java 中创建步骤/转换?,您还可以提出一个好的设计策略来实现这个场景。非常感谢您的帮助。

【问题讨论】:

    标签: java pentaho etl kettle pentaho-cde


    【解决方案1】:

    在文本编辑器中打开任何ktr、kjb文件你会发现它只是一个xml文件。研究每个步骤在 xml 文档中是如何表示的,它是如何保存变量、字段、状态的,步骤是如何相互连接的。

    当您能够构建与您在浏览器中看到的内容相对应的 xml 文档时。

    生成转换或 xml 格式的作业,并使用水壶文档中的 API 将其传递给引擎。

    我认为这需要时间。我认为翻译所有步骤不值得,但至少你可以实现一些必要步骤的一小部分。

    【讨论】:

    • 我们想过用 xml 的方式来实现这个,但这并没有解决我们的问题,这就是为什么我想到创建 TransMeta 和 StepMeta 对象并从请求 json 设置步骤元信息和将这些对象传递给 Kettle 核心 API。
    【解决方案2】:

    我使用工厂模式编写我的 json 解析器,它解析请求 json 并创建 pentaho 步骤和跃点并添加到转换中。 (使用 PDI Java API)。

    我正在将转换作为异步作业运行并维护缓存以保存转换日志输出。

    如果有人在寻找详细的解释,我很乐意提供帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多