如何设置kettle开机自启,能在开机的时候执行定时任务?

如何设置kettle开机自启,能在开机的时候执行定时任务?,第1张

就是后台要有这个进程才可以,如果是通过界面执行的话,要点击那个绿色的三角,如果是命令行启动,后台要有这个进程。不推荐使用kettle里面的自动执行,使用 *** 作系统的定时执行要比这个稳定的多。windows下使用定时任务计划,linux下使用crontab

前面我们介绍了 Kettle的Spoon的转换和作业定时任务GUI设计方式以及运行,但是在实际应用中,我们需要计划任务是在服务器后台运行。

首先我们需要了解Kettle的Kitchen和Pan

Kitchen——作业(job)执行器 (命令行方式)

Pan——转换(trasform)执行器 (命令行方式)

下面我们将重点讲解经常会用到的 ***作业执行器 Kitchen.bat *** 。

1、新建一个bat文件,命名job.bat,然后编辑,输入内容如下:

注意:确保路径的正确性。

2、双击job.bat,即可运行。

我们已经建立了命令行运行的bat文件,并且已经可以正确执行我们的ETL任务了,但是现在我们在运行bat后,桌面上面会一直存在一个控制台的黑窗口,我们可以使用bat命令中的隐藏窗口的命令。

修改我们的job.bat文件

在此双击job.bat运行,我们将不会再看到控制台黑窗口继续保留在桌面上,并且等待设置的间隔时间后,我们可以看到日志文件记录。

···

2017/12/07 16:51:26 - Kitchen - Logging is at level : 基本日志

2017/12/07 16:51:26 - Kitchen - Start of run.

2017/12/07 16:51:31 - job2 - 开始执行任务

2017/12/07 16:51:31 - job2 - job2

2017/12/07 16:53:31 - job2 - 开始项[简单表同步]

2017/12/07 16:53:31 - 简单表同步 - Loading transformation from XML file [file:///D:/KettleProject/TEST2.ktr]

2017/12/07 16:53:31 - 简单表同步 - Using run configuration [Pentaho local]

2017/12/07 16:53:31 - 简单表同步 - Using legacy execution engine

2017/12/07 16:53:31 - TEST2 - 为了转换解除补丁开始 [TEST2]

2017/12/07 16:53:32 - 表输入.0 - Finished reading query, closing connection.

2017/12/07 16:53:32 - 表输入.0 - 完成处理 (I=3, O=0, R=0, W=3, U=0, E=0)

2017/12/07 16:53:32 - 插入 / 更新.0 - 完成处理 (I=3, O=0, R=3, W=3, U=1, E=0)

···

上一篇: Kettle入门之三 Kettle定时任务(GUI)

下一篇: Kettle入门之五 Kettle应用场景(增量插入和更新)

考虑这样的一个工作表:

如果想把里面的 9 列数据都读出来, 就要考虑如何处理多级表头步骤设置的详细描述:

步骤一 选择文件名

步骤二 选择要读取的工作表名称和要读取的内容在工作表里的起始位置, 也就是表头开始的行号和列号 (这里行号和列号是以 0 开始的)

步骤三 设置要读取的内容的一些属性, 这里要设置表头的所占行数是 3 行.

步骤四 错误处理, 选择如果有错误终止还是继续, 错误信息保存的文件等.

(图略)

步骤五 选择字段, 如果前面的三个步骤(不包括错误处理步骤)都设置正确, 在这个页面选择 "获取字段" 字段按钮, 就会获得所有的列名称和数据类型.

这里我们可以看到: 多级表头中各级表头的名称被叠加起来, 形成了唯一的列名.

点击 [预览] 按钮可以预览到数据

对于表头跨连续的多行, 但不分级的情况也可以使用上述方式处理.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11200249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存