如何在 Pentaho BI 服务器 v6 CE 上部署计划的 Kettle 作业

ade*_*pro 3 pentaho kettle

我有一台运行 Pentaho BI 服务器 v6 社区版的服务器。我们开发了一项 Kettle 作业,用于从一个数据库提取到另一个数据库,并导出为 KJB 文件。我想每 12 个小时左右运行一次这项工作。

我注意到BI服务器已经包含了Kettle,并且具有上传和调度作业的能力。如果BI服务器已经安装了Kettle,还需要安装DI服务器吗?

如果没有,如何将KJB文件发布到BI服务器中?我想使用文件系统存储库。如果我直接通过用户控制台上传文件,日志显示导入成功,但我无法在任何地方选择或运行该作业。

mzy*_*mzy 5

我使用 Pentaho BI 服务器 5,但它在 Pentaho BI 6 上应该同样工作。

我的 Kettle 工作运行许多子转换。转换文件存储在文件系统目录中,例如/opt/etl

假设我有一份工作 ( daily_job.kjb),有两个子转换。

要运行,Kettle jobPentaho BI CE使用以下步骤:

  1. 在作业文件中正确设置转换位置
  2. 将子转换上传到服务器上的正确目录 ( /opt/etl)
  3. 创建在 BI 服务器上xaction执行的文件( )Kettle jobdaily.xaction
  4. 上传daily.xaction文件daily_job.kjb到 Pentaho BI 服务器(同一文件夹)
  5. Pentaho BI 服务器上的计划daily.xaction文件

工作设置在daily_job.kjb

在此输入图像描述

Xaction 代码daily.xaction(简单地说,它在 BI 服务器中的同一文件夹daily_job.kjb中执行):xaction

<?xml version="1.0" encoding="UTF-8"?>
<action-sequence> 
  <title>My scheduled job</title>
  <version>1</version>
  <logging-level>ERROR</logging-level>
  <documentation> 
    <author>mzy</author>  
    <description>Sequence for running daily job.</description>  
    <help/>  
    <result-type/>  
    <icon/> 
  </documentation>

  <inputs> 
  </inputs>

  <outputs> 
    <logResult type="string">
      <destinations>
        <response>content</response>
      </destinations>
    </logResult>
  </outputs>

  <resources>
    <job-file>
      <solution-file> 
        <location>daily_job.kjb</location>  
        <mime-type>text/xml</mime-type> 
      </solution-file>     
    </job-file>
  </resources>

  <actions> 
    <action-definition>
      <component-name>KettleComponent</component-name>
      <action-type>Pentaho Data Integration Job</action-type>
      <action-inputs>   
      </action-inputs>
      <action-resources>
        <job-file type="resource"/>
      </action-resources>
      <action-outputs> 
        <kettle-execution-log type="string" mapping="logResult"/>  
        <kettle-execution-status type="string" mapping="statusResult"/> 
      </action-outputs>   
      <component-definition>
        <kettle-logging-level><![CDATA[info]]></kettle-logging-level>           
      </component-definition>
    </action-definition>

  </actions> 
</action-sequence>
Run Code Online (Sandbox Code Playgroud)

在 Pentaho BI CE 上调度 Kettle 作业(xaction 文件):

在此输入图像描述