在数据仓库环节ETL定时任务是一个必不可少的一个环节,因为定时任务取决与你的ETL程序抽取业务数据的频率程度(日、周、季、月、年),一般情况下都采用T+1方式来抽取数据。
关于Kettle定时任务需要调用脚本来执行“作业”与“转换”对应脚本名“Kitchen”与“Pan”,如果是NT系统则找.bat结尾,Linux系统则找.sh结尾相应脚本。
默认情况下采用T+1方式抽取数据到目标表,也可以通过指定日期参数抽取数据到目标表。
其他的参数详细参数参考:
https://www.jianshu.com/p/7e9a02dec8d2
https://blog.csdn.net/rotkang/article/details/21023517
一、命令行执行配置方式
配置name_test_csv的作业的任务后台执行脚本
1、新建一个bat文件,命名name_test.bat,然后编辑,输入内容如下:
该脚本解释,先进入kitchen.bat所在目录,执行kitchen 后面为所带参数
/file:C:\Kettle\date_test\name_test_csv.kjb 作业入口路径\作业名
/level:Basic 日志输出等级Basic基本日期
/logfile C:\Kettle\log\name_test_csv.log 日志输出路径\日志名
代码:
C: :: Kitchen.bat所在路径盘符
cd C:\Kettle\pdi-ce-7.1.0.0-12\data-integration :: Kitchen.bat所在目录
kitchen /file:C:\Kettle\date_test\name_test_csv.kjb /level:Basic /logfile C:\Kettle\log\name_test_csv.log
注意:确保路径的正确性。
2、双击name_test.bat,即可运行。
如果需要看生成日志按日期分文件或者是bat隐藏控制台的窗口
参考:kellte定时任务-后台运行配置方式bat (下)
二、设置定时运行
运用Windows任务计划设置定时运行
1、桌面,右键此电脑,进入管理,配置-任务计划程序-新建基本任务
2、配置执行时间
3、找到要启动的程序或脚本
找到上面配置的bat脚本
4、完成,等待看程序是否执行。
可以通过查看日志看其是否运行
三、问题解决
- C:\Kettle\pdi-ce-7.1.0.0-12\data-integration 可作为系统参数配置到系统环境变量path中去,这样就不需要在bat文件里面写这个了
- 设置定时任务运行失败提示找不到系统文件解决方法
在设置里面填起始地址