前言
Kettle是一款开源的、易上手的ETL工具,拥有良好的图形化界面供开发者使用。服务器由于需要不间断地运行Kettle,有时会造成内存过高,甚至会报错退出。因此决定使用命令行调用kettle的转换.ktr
或作业.kjb
可以弥补这一缺憾。
今天介绍相对特殊的命令行方式,以下操作是在Windows操作系统下,Linux亦同理。
准备 & 实践
1、先开发好一个Job作业(例如:aa.kjb)
2、新建一个文本文件aa.txt
保存后改成aa.bat
D:
cd D:/kettle/data-integration
title MySQLSlowQuery
Kitchen.bat /norep -file=D:/kettle/data-integration/Audit/aa.kjb /lever:basic >D:/kettle/data-integration/logs/aa.log
title
为命令行的标题,可以不写这一行title MySQLSlowQuery
路径请根据实际情况进行设置
aa.log储存了aa.kjb的执行过程,如果报错可以打开log文件查看。
3、打开 Windows任务计划程序
新建一个文件夹kettle(专门存放),点击创建任务
名称、描述自行填写
触发器
可以根据业务需要每天、每周或者每月定时或重复执行注意:如果需要无限循环重复执行的Job,持续时间请选择无限期!
另外 Kettle Job的首项
START
中不要重复设置定时功能!!!image.png
操作
程序或脚本路径为.bat
的路径
D:\kettle\data-integration\bat\aa.bat
起始于
D:\kettle\data-integration\bat\
image.png
最后可以手动执行,或等待定时执行即可
正在运行的Job
任务管理器内存状态
可以发现内存在执行完毕后会回落。
网友评论