Kettle命令行运行KTR和KJB教程

1星 需积分: 44 58 下载量 152 浏览量 更新于2024-09-10 收藏 14KB DOCX 举报
"这篇文章主要介绍了如何使用命令行来运行Kettle中的KTR(Transformation)和KJB(Job)文件,以及如何通过创建批处理文件简化操作。Kettle是一款强大的ETL(Extract, Transform, Load)工具,也被称为Pentaho Data Integration(PDI)。它允许用户通过图形化界面设计数据转换和工作流,并能在命令行模式下执行它们,这在自动化任务和无人值守的运行环境中非常有用。" Kettle中,Transformation(KTR)文件代表数据转换,而Job(KJB)文件则表示一系列转换和控制流程的组合。在没有图形用户界面的情况下,通过命令行运行这些文件可以方便地集成到脚本或自动化流程中。 1. 命令行运行KTR(Transformation)文件: Kettle提供了名为`Pan.bat`的脚本来运行Transformation。你需要打开命令行,切换到`Pan.bat`所在的目录(例如,`d:\data-integration`),然后使用以下命令启动转换: ``` pan /file:D:\etltest\EtltestTrans.ktr ``` 2. 命令行运行KJB(Job)文件: 对于Job文件,使用`kitchen.bat`脚本进行执行。同样,确保在正确的目录下运行,并提供Job文件的路径: ``` kitchen /file:D:\etltest\jobOK.kjb ``` 3. 使用批处理文件简化操作: 如果频繁执行相同命令,可以通过创建批处理文件来避免手动输入。例如,你可以创建一个名为`pan.bat`的文件,包含以下内容: ``` d: cd D:\data-integration pan /file:D:\etltest\EtltestTrans.ktr ``` 双击这个批处理文件,就会自动执行对应的Transformation。对于Job文件,创建类似的`kitchen.bat`文件,内容如下: ``` d: cd D:\data-integration kitchen /file:D:\etltest\jobOK.kjb ``` 这样,只需双击相应的批处理文件即可运行KTR或KJB。 4. `kitchen.bat`的参数说明: - `/rep`: 指定仓库名称。 - `/user`: 仓库用户名。 - `/pass`: 仓库密码。 - `/job`: 要启动的Job的名称。 - `/dir`: 要启动Job的目录(不要忘记前导斜杠)。 - `/file`: 要启动的Job XML文件。 - `/level`: 日志记录级别(Basic, Detailed, Debug, Rowlevel, Error, Nothing)。 - `/logfile`: 要写入的日志文件。 - `/listdir`: 列出仓库中的目录。 - `/listjobs`: 列出指定目录中的Job。 - `/listrep`: 列出可用的仓库。 - `/norep`: 不连接到仓库。 通过以上信息,我们可以了解到Kettle在命令行环境下运行数据转换和工作流的方法,以及如何通过批处理文件优化这一过程。这种灵活性使得Kettle在各种自动化和集成场景中都非常实用。