Kettle定时任务(kettle作业的调度方式)

2024-05-31 18:30:06 :54

kettle定时任务(kettle作业的调度方式)

大家好,今天小编来为大家解答以下的问题,关于kettle定时任务,kettle作业的调度方式这个很多人还不知道,现在让我们一起来看看吧!

本文目录

kettle作业的调度方式

在我们辛辛苦苦地把转换、作业都调试好后,最希望看到的估计就是它能按我们设置好的时间自动运行,满满的成就感,今天就来看看kettle是怎么设置调度运行的。 第一种方式: 新建作业,然后在作业START组件中设置自动运行的频次,同时把需要运行的转换、作业连接起来,然后启动运行,同时保证界面不关闭,这样就可以按设置好的时间自动运行了。第二种方式: 新建普通作业test.kjb,不直接在START组件中设置运行频次,然后新建test.bat批处理文件,内容如下: C: cd C:\tools\data-integration kitchen.bat /file C:\kettle\test.kjb /level Basic /logfile C:\kettle\kettle_test.log @pause 保存bat文件后,直接在windows下搜索“任务计划程序”新建定时任务。按上面设置好后windows就会定时运行test.bat文件,bat文件会启动kitchen.bat运行kettle作业,这样就完成了定时运行。 使用bat运行作业方式效率会比直接在spoon中低,谨慎使用。 有更好的办法?欢迎讨论。

Spoon(kettle)怎么设置定时执行转换任务执行某一个.ktr文件

  1. 计划任务设置后,在属性-触发器-中可以设置5分钟执行一次

  2. bat文件可以包成vbs文件,执行时就不弹窗了,具体方法百度

kettle里面设置了Job定时执行,修改时间重启后,每天仍按原时间和修改后的时间各执行一次

Quartz定机制首先导入jar包程序内 quartz-all-1.6.0.jar创建XMLTimeConfig.xml 名字自定义《?xml version="1.0" encoding="UTF-8"?》《!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"""》《beans》《bean id="mainTask" class="net.timed.MainTask"/》 //要执行任务类 //jar类《bean id="mainJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"》《property name="targetObject"》《ref bean="mainTask"/》//类添加定器《/property》《property name="targetMethod"》《value》execute《/value》 //定执行类面哪《/property》《/bean》《bean id="timeTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"》《property name="jobDetail"》《ref bean="mainJob"/》《/property》《!-- 0 0 10,14,16 * * ? 每午10点午2点4点0 0/30 9-17 * * ? 朝九晚五工作间内每半0 0 12 ? * WED 表示每星期三午12点 "0 0 12 * * ?" 每午12点触发 "0 15 10 ? * *" 每午10:15触发 "0 15 10 * * ?" 每午10:15触发 "0 15 10 * * ? *" 每午10:15触发 "0 15 10 * * ? 2005" 2005每午10:15触发 "0 * 14 * * ?" 每午2点午2:59期间每1钟触发 "0 0/5 14 * * ?" 每午2点午2:55期间每5钟触发 "0 0/5 14,18 * * ?" 每午2点2:55期间午6点6:55期间每5钟触发 "0 0-5 14 * * ?" 每午2点午2:05期间每1钟触发 "0 10,44 14 ? 3 WED" 每三月星期三午2:102:44触发 "0 15 10 ? * MON-FRI" 周至周五午10:15触发 "0 15 10 15 * ?" 每月15午10:15触发 "0 15 10 L * ?" 每月午10:15触发 "0 15 10 ? * 6L" 每月星期五午10:15触发 "0 15 10 ? * 6L 2002-2005" 2002至2005每月星期五午10:15触发 "0 15 10 ? * 6#3" 每月第三星期五午10:15触发 面quartz语 定单位--》《property name="cronExpression"》《value》0 0/5 * * * ?《/value》 //定语《/property》《/bean》《bean id="sfb" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"》《property name="triggers"》《list》《ref local="timeTrigger"/》《/list》《/property》《/bean》《/beans》 //面类我XML引入类package net.timed;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;public class MainTask {public void execute() throws IOException{SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println("do my job"+dateFormat.format(new Date()));Runtime.getRuntime().exec("cmd /c start E:/mbl/BusinessOffice/MoneDB/bin/bakup.bat");}}web.xmlTimeConfig.xml添加进作监听系统启候自监听事件 《?xml version="1.0" encoding="UTF-8"?》《web-app version="2.5" xmlns="" xmlns:xsi="" xsi:schemaLocation=" /web-app_2_5.xsd"》《context-param》《param-name》contextConfigLocation《/param-name》《param-value》/WEB-INF/TimerConfig.xml《/param-value》《/context-param》《listener》《listener-class》org.springframework.web.context.ContextLoaderListener《/listener-class》《/listener》《welcome-file-list》《welcome-file》index.jsp《/welcome-file》《/welcome-file-list》《/web-app》quartz spring定机制 请仔细看看 请给哦首先工具(作业)你启动了没有,呵呵

Kettle作业定时调度

ETL是一项周期性的任务,需要定时执行,调度Kettle有几种方式: 这回,主要介绍下这个自带的调度小功能。 这是一个空的作业,只有开始和成功,加一个写日志控件 我们双击这个START,就可以设置定时调度了。 我们勾选重复,然后选择调度周期就行了 配置好后,执行,会看到它自动重复调度 这个程序就会一直在后台调度,但是界面不能关,关掉后就不会调度了。 当然,我们也可以在后台调度这个任务,它也会按照调度来执行

kettle定时设置每周一7点执行为什么没执行

kettle设置定时执行要把kettle启动起来,并且Job为执行状态;通常的做法是把kitchen挂到后台进程。

Kettle定时功能使用方法如下:

1.在Job下的start模块,有一个定时功能,可以每日,每周等方式进行定时,对于周期性的ETL,很有帮助。

2.使用资源库(repository)登录时,默认的用户名和密码是admin/admin。

3.当job是存放在资源库(一般资源库都使用数据库)中时,使用Kitchen.bat执行job时,需使用如下的命令行:

Kitchen.bat /rep kettle /user admin /pass admin /job job名

4.当job没有存放在资源库而存放在文件系统时,使用Kitchen.bat执行job时,需使用如下的命令行:

Kitchen.bat /norep /file user-transfer-job.kjb

5.可以使用命令行执行job后,就可以使用windows或linux的任务调度来定时执行任务了。

kettle定时执行任务设置

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

linux上使用crond定时执行kettle的job怎么解决

linux上使用crond定时执行kettle的job的解决方法:

一、部署kettle

1. 将pdi-ce-4.1.0-stable.zip上传到Linux服务器。

2. 使用unzip命令解压pdi-ce-4.1.0-stable.zipunzip pdi-ce-4.1.0-stable.zip -d "/mnt/kettle"

3. 赋予解压目录下.sh文件的执行权力chmod +x *.sh

4.进入解压目录,键入“./kitchen.sh”回车,如果有帮助信息则表示kettle环境部署成功。

二、接着,编写执行kettle任务的shell脚本

创建test.sh,将以下内容复制粘贴到里面,然后入“chmod+x /mnt/kettle/*.sh”,赋予test.sh执行权限。

export JAVA_HOME=/usr/java/jre1.6.0_23export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar/mnt/kettle/data-integration/kitchen.sh -file=/mnt/kettle/test.kjb 》 /mnt/kettle/display.txt

说明:前3行,设置Java环境变量的语句必不可少,因为crond是个守护进程,它不归属于任何用户,虽然之前以root身份配置了java的环境变量,但是crond一样找不到java命令,所以,当crond执行kettle任务时,需要动态设置java环境变量,crond才能找到java命令。

三、最后,使用crontab命令添加定时任务1.在终端上,键入“crontab -e”,进入定时任务文件。2.键入“a”,对文件进行。 输入如下内容: 23 11 10 02 * /mnt/kettle/test.sh

其中 23为分钟,11为小时,10为日,02为月,*为星期几,crontab命令的使用这里不再赘述。3.键盘敲击exc,终端键入“:wq”,保存文件。4.重启crond服务。键入“cd /etc/init.d”,进入该目录。键入“./crond restart”,重启crond服务。5.等待执行结果。

6.执行成功,oh..nice!

如何使用kettle自带的‘Star’定时功能

1 新建Job打开‘File’—‘New’—‘Job’,新建一个任务Job2 创建数据库连接为任务Job创建一个数据库连接即指向PC01的连接,双击Job视图窗口的‘Database Connection’弹出配置界面配置好之后,保存退出!3 创建任务关系打开任务设计窗口‘General’将‘START’和’Transformation’图标拖入右侧窗口,再将‘Scripting’中‘SQL’拖入右侧窗口,并将图标连接起来。4 配置START信息双击图标‘START’,弹出配置窗口Repeat:重复—将此项勾选,表示按下面配置的周期重复 Type:周期类型—Weekly,按周重复 Time of day:时分设置—当天的17:10Day of week:星期选择—Saturday,定在每周六执行5 编写SQL语句因为上述编写过的转换只能实现将PC02的数据抽取到PC01中(即将PC01与PC02中共有的数据更新和PC01中没有而PC02中有的数据插入PC01中),而不能实现保持PC01与PC02数据完全相同(即不能将PC02中已经没有的数据从PC01中删除),所以在执行转换前要编写个SQL语句,在插入PC02数据之前将PC01中的数据先清空,双击‘SQL’图标,弹出配置界面Job entry name:SQL脚本的名称—SQLConnection:所属数据库连接—locale,此处是要对PC01中的SWITCHPOWDEV表进行操作,所以选择locale连接SQL:需执行的SQL语句-- DELETE FROM SWITCHPOWDEV保存退出!

Kettle入门之四 Kettle定时任务(后台任务)

前面我们介绍了 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 2017/12/07 16:53:31 - 简单表同步 - Using run configuration 2017/12/07 16:53:31 - 简单表同步 - Using legacy execution engine 2017/12/07 16:53:31 - 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应用场景(增量插入和更新)

关于本次kettle定时任务和kettle作业的调度方式的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

kettle定时任务(kettle作业的调度方式)

本文编辑:admin
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.