Pentaho 数据集成中的 Hello World

让我们创建一个简单的转换,将 CSV 转换为 XML 文件。

我们的转型必须做到以下几点:

  • 阅读 CSV 文件
  • 构建问候消息
  • 将问候语保存在 XML 文件中

http://i.stack.imgur.com/8gKrV.jpg

创建转型:

以下是如何开始转型:

  1. 在工作区的左侧是 Steps Palette。选择输入类别。
  2. 将 CSV 文件拖到右侧的工作区中。
  3. 选择脚本类别。
  4. 将 Modified JavaScript Value 图标拖到工作区。
  5. 选择输出类别。
  6. 将 XML Output 图标拖到工作区。

现在通过创建 Hop 来链接 CSV 文件输入和 Modified Java Script Value:

  1. 选择第一步。
  2. 按住 Shift 键并将图标拖到第二步。
  3. 通过相同的过程将 Modified Java Script Value 与 XML Output 链接起来。

配置 CSV 文件输入步骤

  1. 双击 CSV 文件输入步骤。将显示该步骤的配置窗口。在这里,你将指明文件位置,文件格式(例如分隔符,机箱字符等)和列元数据(例如列名,数据类型等)
  2. 使用更能代表此 Step 功能的步骤更改步骤名称。在这种情况下,键入名称列表。
  3. 对于文件名字段,单击浏览并选择输入文件。
  4. 单击获取字段以将输入文件的列名列表添加到网格中。默认情况下,Step 假定文件具有标题(选中 Header row present 复选框)。
  5. 网格现在具有文件列的名称。6.单击预览以确保按预期读取文件。将出现一个显示文件数据的窗口。单击“ 确定” 以完成定义步骤 CSV 文件输入

配置修改的 JavaScript 值步骤

  1. 双击 Modified JavaScript Value Step。

  2. 将出现步骤配置窗口。这与之前的 Step 配置窗口不同,它允许你编写 JavaScript 代码。你将使用它来构建与每个名称连接的消息 Hello

  3. 命名这一步问候

  4. 配置窗口的主要区域用于编码。在左侧,有一个树,其中包含一组可用的函数,你可以在代码中使用这些函数。特别是,最后两个分支具有输入和输出字段,可以在代码中使用。在此示例中,有两个字段:last_name 和 name。编写以下代码:

    var msg = 'Hello, ' + name + "!";
    
  5. 在底部,你可以键入代码中创建的任何变量。在这种情况下,你创建了一个名为 msg 的变量。由于需要将此消息发送到输出文件,因此必须在网格中编写变量名称。

  6. 单击确定完成配置“修改的 Java 脚本值”步骤。

  7. 选择刚刚配置的步骤。为了检查新字段是否会离开此步骤,你现在将看到输入和输出字段。输入字段是到达步骤的数据列。输出字段是离开步骤的数据列。有些步骤只是简单地转换输入数据。在这种情况下,输入和输出字段通常是相同的。但是,有些步骤会将字段添加到输出 - 计算器中。还有其他步骤可以过滤或组合数据,从而导致输出具有较少的字段,例如输入 - 分组。

  8. 右键单击步骤以显示上下文菜单。

  9. 选择显示输入字段。你将看到输入字段是 last_name 和 name,它们来自 CSV 文件输入步骤。

  10. 选择显示输出字段。你将看到,你不仅拥有现有字段,还拥有新的 msg 字段。

配置 XML 输出步骤

  1. 双击 XML 输出步骤。将出现此类步骤的配置窗口。在这里,你将设置输出文件的名称和位置,并确定要包含的字段。你可以包含到达步骤的全部或部分字段。

  2. 将步骤文件命名为: 问候语

  3. 在文件框中写:

    ${Internal.Transformation.Filename.Directory}/Hello.xml
    
  4. 单击获取字段以使用三个输入字段填充网格。

  5. 再次保存转换。

单击菜单栏上的 RUN 按钮并启动转换。

你还可以创建一个 Job,该 Job 可用于安排多个转换然后运行它。

或者,Pan 允许你从终端窗口执行转换。脚本是 Windows 上的 Pan.bat,或其他平台上的 pan.sh,它位于安装文件夹中。

Pan /file <Tutorial_folder_path>/Hello.ktr /norep