Pentaho 数据集成中的 Hello World
让我们创建一个简单的转换,将 CSV 转换为 XML 文件。
我们的转型必须做到以下几点:
- 阅读 CSV 文件
- 构建问候消息
- 将问候语保存在 XML 文件中
http://i.stack.imgur.com/8gKrV.jpg
创建转型:
以下是如何开始转型:
- 在工作区的左侧是 Steps Palette。选择输入类别。
- 将 CSV 文件拖到右侧的工作区中。
- 选择脚本类别。
- 将 Modified JavaScript Value 图标拖到工作区。
- 选择输出类别。
- 将 XML Output 图标拖到工作区。
现在通过创建 Hop 来链接 CSV 文件输入和 Modified Java Script Value:
- 选择第一步。
- 按住 Shift 键并将图标拖到第二步。
- 通过相同的过程将 Modified Java Script Value 与 XML Output 链接起来。
配置 CSV 文件输入步骤
- 双击 CSV 文件输入步骤。将显示该步骤的配置窗口。在这里,你将指明文件位置,文件格式(例如分隔符,机箱字符等)和列元数据(例如列名,数据类型等)
- 使用更能代表此 Step 功能的步骤更改步骤名称。在这种情况下,键入名称列表。
- 对于文件名字段,单击浏览并选择输入文件。
- 单击获取字段以将输入文件的列名列表添加到网格中。默认情况下,Step 假定文件具有标题(选中 Header row present 复选框)。
- 网格现在具有文件列的名称。6.单击预览以确保按预期读取文件。将出现一个显示文件数据的窗口。单击“ 确定” 以完成定义步骤 CSV 文件输入。
配置修改的 JavaScript 值步骤
-
双击 Modified JavaScript Value Step。
-
将出现步骤配置窗口。这与之前的 Step 配置窗口不同,它允许你编写 JavaScript 代码。你将使用它来构建与每个名称连接的消息
Hello
。 -
命名这一步问候。
-
配置窗口的主要区域用于编码。在左侧,有一个树,其中包含一组可用的函数,你可以在代码中使用这些函数。特别是,最后两个分支具有输入和输出字段,可以在代码中使用。在此示例中,有两个字段:last_name 和 name。编写以下代码:
var msg = 'Hello, ' + name + "!";
-
在底部,你可以键入代码中创建的任何变量。在这种情况下,你创建了一个名为 msg 的变量。由于需要将此消息发送到输出文件,因此必须在网格中编写变量名称。
-
单击确定完成配置“修改的 Java 脚本值”步骤。
-
选择刚刚配置的步骤。为了检查新字段是否会离开此步骤,你现在将看到输入和输出字段。输入字段是到达步骤的数据列。输出字段是离开步骤的数据列。有些步骤只是简单地转换输入数据。在这种情况下,输入和输出字段通常是相同的。但是,有些步骤会将字段添加到输出 - 计算器中。还有其他步骤可以过滤或组合数据,从而导致输出具有较少的字段,例如输入 - 分组。
-
右键单击步骤以显示上下文菜单。
-
选择显示输入字段。你将看到输入字段是 last_name 和 name,它们来自 CSV 文件输入步骤。
-
选择显示输出字段。你将看到,你不仅拥有现有字段,还拥有新的 msg 字段。
配置 XML 输出步骤
-
双击 XML 输出步骤。将出现此类步骤的配置窗口。在这里,你将设置输出文件的名称和位置,并确定要包含的字段。你可以包含到达步骤的全部或部分字段。
-
将步骤文件命名为: 问候语。
-
在文件框中写:
${Internal.Transformation.Filename.Directory}/Hello.xml
-
单击获取字段以使用三个输入字段填充网格。
-
再次保存转换。
跑
单击菜单栏上的 RUN 按钮并启动转换。
你还可以创建一个 Job,该 Job 可用于安排多个转换然后运行它。
或者,Pan 允许你从终端窗口执行转换。脚本是 Windows 上的 Pan.bat,或其他平台上的 pan.sh,它位于安装文件夹中。
Pan /file <Tutorial_folder_path>/Hello.ktr /norep