kettle有两种定时方式:
一是用系统自带的定时任务,使用Kitchen、Pan命令编写bat、sh脚本,然后使用windows任务计划或者linux的crotab,定时执行脚本来执行任务,这个方式用的最多。
二是自带的定时功能,Start控件,需要kettle程序一直运行,否则失效,一直运行,会对资源造成一种浪费,并且会存在很多的不稳定性。
目录
一、参数
Kitchen 作业(.kjb)执行器 (命令行方式)
Pan 转换(.ktr)执行器 (命令行方式)
/file | 要启动的文件名(作业所在的路径) |
/level | 日志等级 |
/rep | 资源库名称 |
/user | 资源库用户名 |
/pass | 资源库密码 |
/job | 要启动的作业名称 |
名称 | 描述 |
/file | 要启动的文件名(转换所在的路径) |
/level | 日志等级 |
/rep | 资源库名称 |
/user | 资源库用户名 |
/pass | 资源库密码 |
/trans | 要启动的转换名称 |
注:日志等级
Nothing:没有日志 不显示任何输出
Error:错误日志 仅仅显示错误信息
Minimal:最小日志 使用最小的日志
Basic:基本日志 缺省的日志级别
Detailed:详细日志 给出日志输出的细节
Debug:调试日志 调试目的,调试输出
Rowlevel:行级日志 打印出每一行记录的信息
二、系统自带的定时任务
1、创建一个转换(作业)
2、创建一个bat文件
内容
##防止bat脚本内容中的中文乱码
chcp 65001
##pan.bat(Kitchen.bat)所在路径盘符
E:
##CD到Kettle的data-integration所在路径
cd E:\BigDataSoftware\kettle-9.4.-343\data-integration
##找到放脚本的位置并且执行,后面接转换(作业)所在路径,参数看参数表对应着写
##输出日志
pan /file D:\Desktop\是.ktr /Level:Basic > D:\Desktop\1.log
3、运行
创建完成后双击该文件运行,查看日志和库表是否成功
命令窗口可以在运行的时候隐藏了,隐藏命令窗口代码
注:如果要做定时任务,就不要加,否则会报错,定时任务有设置可以隐藏
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
::
4、定时任务
搜索框中搜索任务计划
5、测试
启动测试一下
查看日志和库表,看是否成功