GeoKettle 是一套基于元数据,功能强大的空间数据 ETL(抽取、转换与装载)工具。它用于整合不同的空间信息来源,建立和更新地理信息数据库与数据仓库。它为从各类数据源抽取所需数据,转换数据格式并清理、纠错、满足标准协议,并将成果装载进入目标数据库、GIS 文件或网络服务提供了一整套方法。
本文档将演示:
- 读取已有的数据转换信息
- 创建新的转换
通过 File ‣ Open 可读取配置文件。在 /opt/geokettle/samples/transformations/geokettle 目录可以看到演示配置。从中选择一个并单击 :guilabel:`OK 。GeoKettle 转换文件的扩展名是 *.ktr 。
下图的示例是 « intersection » 转换。工作台的两部分现在都显示了此转换配置的内容。
明黄色的提示栏显示了转换配置的描述以及可选参数。
在开启转换操作之前,需要指定目标文件(shp)。请双击各个 « GIS file input » 步骤以显示如下图的配置对话框:
输入目标文件的名称(包括 .shp`)或直接使用默认。点击 :guilabel:`OK 完成。
至此,转换可以运行了。点击 play 即可执行操作。
同前节一样,启动 GeoKettle 并进入工作台。
选择 File ‣ New ‣ Transformation 创建新转换配置。选择 File ‣ Save as... 可以所需的文件名保存。
如下图所示,所有转换步骤都在左侧面板显示,并可展开进一步显示细节。
要添加一个新的转换步骤,将所需步骤从 Steps 面板拖动到 transformation 面板。双击可调整其设置。
Hop / 连接
两个步骤之间的箭头表示一个连接,即两者之间数据流。如下图所示,从 Table Input / 表格数据输入 到 Add sequence / 添加序列 表示 Table Input 的输出既是 Add sequence 的输入。其它同理。
选择两个转换步骤,右键点击其中一个并选择 New hop 即可创建新连接。或者在选择待连接步骤时按住 Ctrl 也可。
双击任何连接或右击选择 Edit hop 可编辑连接。
设置转换过程
转换大部分步骤需要配置相应的参数。
运行转换
运行转换时,运行面板会在下方显示。这个 Execution Results / 运行结果 面板会显示所有步骤的数据流信息。
如下图所示,**Step Metrics / 转换步骤参数** 选项卡会首先显示。这里包含了数据输入/输出量等信息。**Active / 活动状态** 一览显示该步骤 started/启动、running/运行、finished/完成、aborted/撤销等。**Time / 时间** 一栏显示了各个项目的运行时间,同时还有 Speed / 平均速度 栏显示每秒处理的记录数。
预览转换配置
执行转换可能导致错误。错误信息显示在 Execution Results 面板(如下图)。错误的细节在 Logging / 日志 选项卡。日志包含了大量的信息用于追踪错误来源,并调整转换过程设计。
为帮助查找错误,系统可以显示各个中间过程的输出。右键单击某个步骤并选择 Preview 即可。这样可以避免反复执行整个转换,而直接查看某个点的执行状态。
GeoKettle 用户/开发者文档可以在官方 wiki 获取。欢迎就使用中发现的问题在 Spatialytics 论坛 提问。